The default.aspx page has a DropDownList which is populated in the code behind only when it is not a postback. When a value is selected a method is called which fills a Literal with the selected value. It works as expected. The problem is when I set the page to not EnableViewState enabling it in the DropDownList control only. In this case when posted back the DropDownList loses its items. I have setup a new Web project just to test this. There is no master page to make it simpler.
Default.aspx:
CodeBehind="Default.aspx.cs" Inherits="WebApplication4._Default"
EnableViewState="false" %>
OnSelectedIndexChanged="DDL_OSIC"
AutoPostBack="true"
EnableViewState="true">
Default.aspx.cs:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
DDL.Items.Add("red");
DDL.Items.Add("green");
DDL.Items.Add("blue");
}
}
protected void DDL_OSIC(object sender, EventArgs e)
{
Literal1.Text = DDL.SelectedValue;
}
Why isn't EnableViewState working?