1.用数据邦定的方法实现html页面的数据邦定(和cs里面的方法联系)
2.通过获取当前的索引号来获得数据(cs里面的代码
3.数据邦定另外一种方法![]()
呵呵代码写的多了 困~)
1
asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 88px; POSITION: absolute; TOP: 96px" runat="server"
2
AutoGenerateColumns="False" Height="296px" Width="664px">
3
<Columns>
4
<asp:TemplateColumn HeaderText="CityProId">
5
<ItemTemplate>
6
<asp:Label id=Label1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CityProId") %>'>
7
</asp:Label>
8
</ItemTemplate>
9
<EditItemTemplate>
10
<FONT face="宋体">
11
<asp:DropDownList id="ddl1" runat="server" DataSource="<%# mytable.DefaultView %>" DataTextField="CityProId" Width="160px" Height="24px" SelectedIndex="<%#GetSelectedIndex2(ddl1Text)%>" OnSelectedIndexChanged="onchanged" AutoPostBack="True">
12
</asp:DropDownList></FONT>
13
</EditItemTemplate>
14
</asp:TemplateColumn>
15
<asp:TemplateColumn HeaderText="CityName">
16
<ItemTemplate>
17
<asp:Label id=Label2 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CityName") %>'>
18
</asp:Label>
19
</ItemTemplate>
20
<EditItemTemplate>
21
<asp:DropDownList id=ddl2 runat="server" Width="176px" Height="24px" AutoPostBack="True" DataSource="<%# mytable.DefaultView %>" DataTextField="CityName" SelectedIndex="<%#GetSelectedIndex(getvalue(ddl1Text))%>" >
22
</asp:DropDownList>
23
</EditItemTemplate>
24
</asp:TemplateColumn>
25
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>
26
</Columns>
27
</asp:datagrid>
asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 88px; POSITION: absolute; TOP: 96px" runat="server"2
AutoGenerateColumns="False" Height="296px" Width="664px">3
<Columns>4
<asp:TemplateColumn HeaderText="CityProId">5
<ItemTemplate>6
<asp:Label id=Label1 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CityProId") %>'>7
</asp:Label>8
</ItemTemplate>9
<EditItemTemplate>10
<FONT face="宋体">11
<asp:DropDownList id="ddl1" runat="server" DataSource="<%# mytable.DefaultView %>" DataTextField="CityProId" Width="160px" Height="24px" SelectedIndex="<%#GetSelectedIndex2(ddl1Text)%>" OnSelectedIndexChanged="onchanged" AutoPostBack="True">12
</asp:DropDownList></FONT>13
</EditItemTemplate>14
</asp:TemplateColumn>15
<asp:TemplateColumn HeaderText="CityName">16
<ItemTemplate>17
<asp:Label id=Label2 runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.CityName") %>'>18
</asp:Label>19
</ItemTemplate>20
<EditItemTemplate>21
<asp:DropDownList id=ddl2 runat="server" Width="176px" Height="24px" AutoPostBack="True" DataSource="<%# mytable.DefaultView %>" DataTextField="CityName" SelectedIndex="<%#GetSelectedIndex(getvalue(ddl1Text))%>" >22
</asp:DropDownList>23
</EditItemTemplate>24
</asp:TemplateColumn>25
<asp:EditCommandColumn ButtonType="LinkButton" UpdateText="更新" CancelText="取消" EditText="编辑"></asp:EditCommandColumn>26
</Columns>27
</asp:datagrid>2.通过获取当前的索引号来获得数据(cs里面的代码
1
using System;
2
using System.Collections;
3
using System.ComponentModel;
4
using System.Data;
5
using System.Drawing;
6
using System.Web;
7
using System.Web.SessionState;
8
using System.Web.UI;
9
using System.Web.UI.WebControls;
10
using System.Web.UI.HtmlControls;
11
12
namespace WebApplication6
13
{
14
/// <summary>
15
/// test2ddl 的摘要说明。
16
/// </summary>
17
public class test2ddl : System.Web.UI.Page
18
{
19
protected System.Web.UI.WebControls.DataGrid DataGrid1;
20
DataBase db=new DataBase();
21
public string ddl1Text="26";
22
protected System.Web.UI.HtmlControls.HtmlInputHidden Hidden1;
23
protected static DataTable mytable;
24
25
private void Page_Load(object sender, System.EventArgs e)
26
{
27
if(!this.Page.IsPostBack)
28
{
29
databind();
30
string s="select * from City ";
31
mytable=db.GetDatatable(s);
32
33
}
34
35
// 在此处放置用户代码以初始化页面
36
}
37
public void databind()
38
{
39
string ss="select * from City";
40
41
this.DataGrid1.DataSource=db.GetDatatable(ss).DefaultView;
42
this.DataGrid1.DataBind();
43
44
45
}
46
Web 窗体设计器生成的代码
68
69
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
70
{
71
72
}
73
/// <summary>
74
/// 获取第一个ddl的值
75
/// </summary>
76
/// <param name="source"></param>
77
/// <param name="e"></param>
78
public void onchanged(object sender, System.EventArgs e)
79
{
80
DropDownList ddl = (DropDownList)sender;
81
ddl1Text=ddl.SelectedItem.Text;
82
this.Hidden1.Value=ddl1Text;
83
getvalue(ddl1Text);
84
Response.Write( GetSelectedIndex(ddl1Text).ToString());
85
this.Page.DataBind();//注意页面元素的控件的邦定@
86
databind();
87
88
//获取第一个ddl的值
89
90
}
91
/// <summary>
92
/// 根据第一个ddl的值获得第2个ddl的值
93
/// </summary>
94
/// <param name="ss"></param>
95
public string getvalue(string ss)
96
{
97
98
99
string sss="ok";
100
string s="select * from City where CityProId='"+ddl1Text+"'";
101
sss=db.GetDatatable(s).Rows[0][1].ToString();
102
return sss;
103
}
104
/// <summary>
105
/// 获取第二个ddl的对应的索引
106
/// </summary>
107
/// <param name="source"></param>
108
/// <param name="e"></param>
109
public int GetSelectedIndex(string str)
110
{
111
int i=0;
112
if(str != null)
113
{
114
string s="select CityName from City";
115
foreach(DataRow newrow in db.GetDatatable(s).Rows)
116
{
117
if(str == newrow["CityName"].ToString())
118
break;
119
i++;
120
}
121
}
122
return i;
123
}
124
/// <summary>
125
/// 获取第一个ddl的对应的索引
126
/// </summary>
127
/// <param name="str"></param>
128
/// <returns></returns>
129
public int GetSelectedIndex2(string str)
130
{
131
132
int i=0;
133
if(str != null)
134
{
135
string s="select CityProId from City";
136
foreach(DataRow newrow in db.GetDatatable(s).Rows)
137
{
138
if(str == newrow["CityProId"].ToString())
139
break;
140
i++;
141
}
142
}
143
return i;
144
}
145
private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
146
{
147
this.DataGrid1.EditItemIndex=e.Item.ItemIndex;
148
databind();
149
this.DataGrid1.DataBind();
150
}
151
152
153
154
155
}
156
}
157
using System;2
using System.Collections;3
using System.ComponentModel;4
using System.Data;5
using System.Drawing;6
using System.Web;7
using System.Web.SessionState;8
using System.Web.UI;9
using System.Web.UI.WebControls;10
using System.Web.UI.HtmlControls;11

12
namespace WebApplication613
{14
/// <summary>15
/// test2ddl 的摘要说明。16
/// </summary>17
public class test2ddl : System.Web.UI.Page18
{19
protected System.Web.UI.WebControls.DataGrid DataGrid1;20
DataBase db=new DataBase();21
public string ddl1Text="26";22
protected System.Web.UI.HtmlControls.HtmlInputHidden Hidden1;23
protected static DataTable mytable;24
25
private void Page_Load(object sender, System.EventArgs e)26
{27
if(!this.Page.IsPostBack)28
{29
databind();30
string s="select * from City ";31
mytable=db.GetDatatable(s);32

33
} 34
35
// 在此处放置用户代码以初始化页面36
}37
public void databind()38
{39
string ss="select * from City";40
41
this.DataGrid1.DataSource=db.GetDatatable(ss).DefaultView;42
this.DataGrid1.DataBind();43

44

45
}46
Web 窗体设计器生成的代码68

69
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)70
{71

72
}73
/// <summary>74
/// 获取第一个ddl的值75
/// </summary>76
/// <param name="source"></param>77
/// <param name="e"></param>78
public void onchanged(object sender, System.EventArgs e)79
{80
DropDownList ddl = (DropDownList)sender;81
ddl1Text=ddl.SelectedItem.Text;82
this.Hidden1.Value=ddl1Text;83
getvalue(ddl1Text); 84
Response.Write( GetSelectedIndex(ddl1Text).ToString());85
this.Page.DataBind();//注意页面元素的控件的邦定@86
databind();87

88
//获取第一个ddl的值89

90
}91
/// <summary>92
/// 根据第一个ddl的值获得第2个ddl的值93
/// </summary>94
/// <param name="ss"></param>95
public string getvalue(string ss)96
{ 97
98
99
string sss="ok"; 100
string s="select * from City where CityProId='"+ddl1Text+"'";101
sss=db.GetDatatable(s).Rows[0][1].ToString();102
return sss;103
}104
/// <summary>105
/// 获取第二个ddl的对应的索引106
/// </summary>107
/// <param name="source"></param>108
/// <param name="e"></param>109
public int GetSelectedIndex(string str)110
{111
int i=0;112
if(str != null)113
{114
string s="select CityName from City";115
foreach(DataRow newrow in db.GetDatatable(s).Rows)116
{117
if(str == newrow["CityName"].ToString())118
break;119
i++;120
}121
}122
return i;123
}124
/// <summary>125
/// 获取第一个ddl的对应的索引126
/// </summary>127
/// <param name="str"></param>128
/// <returns></returns>129
public int GetSelectedIndex2(string str)130
{131

132
int i=0;133
if(str != null)134
{135
string s="select CityProId from City";136
foreach(DataRow newrow in db.GetDatatable(s).Rows)137
{138
if(str == newrow["CityProId"].ToString())139
break;140
i++;141
}142
}143
return i;144
}145
private void DataGrid1_EditCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)146
{147
this.DataGrid1.EditItemIndex=e.Item.ItemIndex;148
databind();149
this.DataGrid1.DataBind();150
}151

152
153

154
155
}156
}157

3.数据邦定另外一种方法
呵呵代码写的多了 困~)


浙公网安备 33010602011771号