日期:2014-05-18  浏览次数:20397 次

viewstate和dropdownlist的一个小问题
Page_Load里   进行dropdownlist的数据绑定
for   (int   i   =   0;   i   <   10;   i++)
{
DropDownList1.Items.Add(new   ListItem(i.ToString()));
}
另有一个button获取其值
protected   void   Button1_Click(object   sender,   EventArgs   e)
        {
                Response.Write(DropDownList1.SelectedValue);
        }

可是如果禁用了viewstate的话,是获取不到值的...
大家都怎么解决的?不想打开viewstate

------解决方案--------------------
可是如果禁用了viewstate的话,是获取不到值的..
========
你取不到值?我为什么可以呢?

实际上即使你禁用ViewState的,也是可以的,
因为 DropDownList 实现了 IPostBackDataHandler ,其 SelectedValue 是每次回发都会回串的,并且保持选中状态

只是,你这段代码本身逻辑上就有问题,
Button1_Click 再 Page_Load 之后执行,那么 Button1_Cllick 获取的永远是第一项的值