当要修改从数据库中读取的数据时,通常要先将数据显示在页面上,需要设置DropDownList 或其他List绑定数据的选中状态。
如果没有静态添加数据项,即AppendDataBoundItems="False"时,选中代码如下:
假设从数据库读取的数据为value=read["DataValue"],
DropDownList 或其他List控件的ID为list
如果一个List控件既有静态添加的数据,又有绑定数据的时候,并且AppendDataBoundItems="True"时,
直接写上面的代码,第一次是无效的。解决办法就是,清空所有选项,重新静态添加数据项并且利用数据源重新绑定数据再执行以上代码。
如果没有静态添加数据项,即AppendDataBoundItems="False"时,选中代码如下:
假设从数据库读取的数据为value=read["DataValue"],
DropDownList 或其他List控件的ID为list
1 foreach (ListItem item in list.Items)
2 {
3 if (value == "True")
4 value = "1";
5 else if (value == "False")
6 value = "0";
7 if (item.Value == value)
8 item.Selected = true;
9 else item.Selected = false;
10 }
11
2 {
3 if (value == "True")
4 value = "1";
5 else if (value == "False")
6 value = "0";
7 if (item.Value == value)
8 item.Selected = true;
9 else item.Selected = false;
10 }
11
如果一个List控件既有静态添加的数据,又有绑定数据的时候,并且AppendDataBoundItems="True"时,
直接写上面的代码,第一次是无效的。解决办法就是,清空所有选项,重新静态添加数据项并且利用数据源重新绑定数据再执行以上代码。
1 list.Items.Clear();
2 list.Items.Add(new ListItem("所有场所", "%"));
3
4 list.DataBind();
5
6 foreach (ListItem item in list.Items)
7 {
8 if (value == "True")
9 value = "1";
10 else if (value == "False")
11 value = "0";
12 if (item.Value == value)
13 item.Selected = true;
14 else item.Selected = false;
15 }
16
2 list.Items.Add(new ListItem("所有场所", "%"));
3
4 list.DataBind();
5
6 foreach (ListItem item in list.Items)
7 {
8 if (value == "True")
9 value = "1";
10 else if (value == "False")
11 value = "0";
12 if (item.Value == value)
13 item.Selected = true;
14 else item.Selected = false;
15 }
16