DropDownList 设置默认值的有关问题
DropDownList 设置默认值的问题
前台
后台
Class1类
在GridView里面 点编辑会又一个下拉框 但是下拉框出来的书名是数据库的第一个而不是点编辑前里面原有的那个
求大神指点
------解决思路----------------------
1、aspx的grid里的DropDownList1下面放个隐藏的label ,设置Text=' <%#Eval("bname") %>'。
2、ddl.DataBind()以后,遍历ddl的项,如果等于那个隐藏的label 的Text值,就设置为选中。
------解决思路----------------------
这个问题可以解决,解决方法如下:
1、在前台gridview中加入DataKeyNames="bname";
2、后台protected void gv_RowEditing(object sender, GridViewEditEventArgs e)函数中利用string bookname = GridViewID.DataKeys[e.Row.RowIndex]["bname"].ToString();获得书名;
3、ddl.Items.FindByText(bookname).Selected = true; //设置默认值
------解决思路----------------------
http://blog.****.net/zhangzhongping/article/details/1836148
这个网址有详细的解决方法!
前台
<asp:TemplateField HeaderText="书名">
<EditItemTemplate>
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" >
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<%#Eval("bname") %>
</ItemTemplate>
</asp:TemplateField>
后台
protected void gv_RowEditing(object sender, GridViewEditEventArgs e)
{
if (((DropDownList)gv.Rows[e.NewEditIndex].FindControl("DropDownList1")) != null)
{
DropDownList ddl = (DropDownList)gv.Rows[e.NewEditIndex].FindControl("DropDownList1");
ddl.Items.Clear();
Class1 c1 = new Class1();
string sql = "select * from book";
DataTable dtable = c1.GetData(sql);
ddl.DataValueField ="0";
ddl.DataValueField = "bid";
ddl.DataTextField = "bname";
ddl.DataBind();
}
}
Class1类
public DataTable GetData(string sql)
{
SqlCommand cmd = sqlCon.CreateCommand();
cmd.CommandText = sql;
DataTable dt = new DataTable();
SqlDataAdapter sda = new SqlDataAdapter(cmd);
sda.Fill(dt);
return dt;
}
在GridView里面 点编辑会又一个下拉框 但是下拉框出来的书名是数据库的第一个而不是点编辑前里面原有的那个
求大神指点
------解决思路----------------------
1、aspx的grid里的DropDownList1下面放个隐藏的label ,设置Text=' <%#Eval("bname") %>'。
2、ddl.DataBind()以后,遍历ddl的项,如果等于那个隐藏的label 的Text值,就设置为选中。
------解决思路----------------------
这个问题可以解决,解决方法如下:
1、在前台gridview中加入DataKeyNames="bname";
2、后台protected void gv_RowEditing(object sender, GridViewEditEventArgs e)函数中利用string bookname = GridViewID.DataKeys[e.Row.RowIndex]["bname"].ToString();获得书名;
3、ddl.Items.FindByText(bookname).Selected = true; //设置默认值
------解决思路----------------------
http://blog.****.net/zhangzhongping/article/details/1836148
这个网址有详细的解决方法!