如果DataValueField的值都一样
会在焦点转移后自动跳到第一项,所以可以不给DataValueField赋值,而直接读取SelectedItem.Text可以避免选值出错。
这个与PostBack无关。
Code
void Bind(String Field,DropDownList ddt)
{
String sql = "select * from tb_Maintain where FieldName ='" + Field +"'";
DataSet set = new DataSet();
set = DataBase.ReDataset(sql);
ddt.DataSource = set.Tables[0].DefaultView;
ddt.DataTextField = "FieldValue";
//ddt.DataValueField = "FieldName";
ddt.DataBind();
ddt.Items.Add(new ListItem("", "all"));
ddt.Items.FindByValue("all").Selected = true;
}
void Bind(String Field,DropDownList ddt)
{
String sql = "select * from tb_Maintain where FieldName ='" + Field +"'";
DataSet set = new DataSet();
set = DataBase.ReDataset(sql);
ddt.DataSource = set.Tables[0].DefaultView;
ddt.DataTextField = "FieldValue";
//ddt.DataValueField = "FieldName";
ddt.DataBind();
ddt.Items.Add(new ListItem("", "all"));
ddt.Items.FindByValue("all").Selected = true;
}