62,243
社区成员




<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
OnRowDataBound="GridView1_RowDataBound"
OnRowEditing="GridView1_RowEditing" >
<Columns>
<asp:TemplateField HeaderText="终端编号">
<ItemTemplate><%# Eval("DCT_Id") %></ItemTemplate>
<EditItemTemplate>
<asp:HiddenField ID="HiddenField1" runat="server" />
<asp:DropDownList ID="DropDownList1" runat="server">
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="用电方案">
<ItemTemplate><%#Eval("UP_Name")%></ItemTemplate>
<EditItemTemplate>
<asp:HiddenField ID="HiddenField2" runat="server" />
<asp:DropDownList ID="DropDownList2" runat="server">
</asp:DropDownList>
</EditItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowEditButton="True" />
</Columns>
</asp:GridView>
protected void Page_Load(object sender, EventArgs e)
{
dt1 = new DataTable();
dt1.Columns.Add("DCT_Id");
dt1.Columns.Add("UP_Name");
dt1.Rows.Add("1","name1");
dt1.Rows.Add("2", "name2");
dt1.Rows.Add("3", "name3");
dt2 = new DataTable();
dt2.Columns.Add("DCT_Id");
dt2.Columns.Add("DCT_Name");
dt2.Rows.Add("1", "dctname1");
dt2.Rows.Add("2", "dctname2");
dt2.Rows.Add("3", "dctname3");
dt3 = new DataTable();
dt3.Columns.Add("UP_Id");
dt3.Columns.Add("UP_Name");
dt3.Rows.Add("1", "upname1");
dt3.Rows.Add("2", "upname2");
dt3.Rows.Add("3", "upname3");
if(!IsPostBack)
Bing();
}
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
Bing();
}
DataTable dt1,dt2,dt3;
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if ((e.Row.RowState & DataControlRowState.Edit) == DataControlRowState.Edit)
{
HiddenField hd1 = e.Row.FindControl("HiddenField1") as HiddenField;
DropDownList lst1 = e.Row.FindControl("DropDownList1") as DropDownList;
lst1.DataSource = dt2;
lst1.DataValueField = "DCT_Id";
lst1.DataTextField = "DCT_Name";
lst1.DataBind();
lst1.SelectedValue = hd1.Value;
//
HiddenField hd2 = e.Row.FindControl("HiddenField2") as HiddenField;
DropDownList lst2 = e.Row.FindControl("DropDownList2") as DropDownList;
lst2.DataSource = dt3;
lst2.DataValueField = "UP_Id";
lst2.DataTextField = "UP_Name";
lst2.DataBind();
lst2.SelectedValue = hd2.Value;
//Bing();不知道你在这里加这句有什么意义?我反正帮你去掉了
}
}
void Bing()
{
GridView1.DataSource = dt1;
GridView1.DataBind();
}