ASP.NET下拉列表-在母版页启用ViewState=true时工作

ASP.NET下拉列表-在母版页启用ViewState=true时工作,asp.net,drop-down-menu,Asp.net,Drop Down Menu,我有一个下拉菜单,在回发时,我无法获得所选的值 母版页启用视图状态=False 内容页ViewState=true DropdownList控件ViewState=true 不起作用 如果我切换Masterpage EnableViewState=true,它会工作,但是站点的其余部分实际上不需要视图状态,所以理想情况下我希望它被启用 数据绑定发生在Page_Init处理程序中,其中有一个Page.IsPostBack子句 有什么想法吗?每页只有一个视图状态(除了存储在视图状态中的控件状态)

我有一个下拉菜单,在回发时,我无法获得所选的值

  • 母版页启用视图状态=False
  • 内容页ViewState=true
  • DropdownList控件ViewState=true
不起作用

如果我切换Masterpage EnableViewState=true,它会工作,但是站点的其余部分实际上不需要视图状态,所以理想情况下我希望它被启用

数据绑定发生在Page_Init处理程序中,其中有一个Page.IsPostBack子句


有什么想法吗?

每页只有一个视图状态(除了存储在视图状态中的控件状态)。如果您在母版页上关闭它,它将在页面上关闭。

克里斯是100%正确的。如果您只想维护这一个控件的状态,您可以子类化
下拉列表
并添加控件状态。无论任何ViewState设置如何,此选项都有效


我认为您应该能够从表单集合中获取dropdownlist的选定值(无需启用ViewState),例如:


因此,在页面本身中设置它不会覆盖它?母版页设置在此处被覆盖,并且实际上Viewstate被关闭
if (IsPostBack)
    string selectedValue = Request.Form["Id_of_the_DropDownList"];