我正在尝试通过在Page_Load中调用:drop.SelectedIndex = 5来为DropDownList设置初始选择。 这是有效的,但如果我手动更改选择并想保存表单,我在调用drop.SelectedValue时仍然会得到初始选择而不是新选择。怎么了?
答案 0 :(得分:2)
您忘记了检查if(!IsPostback)
。否则,在触发SelectedIndexChanged
事件(或按钮单击事件)之前,您将在回发时再次选择第6项:
protected void Page_Load(Object sender, EventArgs e)
{
if(!IsPostBack) // do this only on the initial load and not on postbacks
dropDwonList1.SelectedIndex = 5;
}
答案 1 :(得分:0)
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
//set up data here
}
}
if (Page.IsPostBack)
{
//do page reload logic in here
}
protected void foo(object sender, EventArgs e)
{
//get your selected value here
}
试试此代码
答案 2 :(得分:0)
你应该在Page_Load函数中使用if(!IsPostback)。
protected void Page_Load(Object sender,EventArgs e) { 如果(!的IsPostBack) { drop.SelectedIndex = 5; // yourcode } }
通过这个你的问题将得到解决