変更すると新しい値がViewState変数に保存されるドロップダウンリストがあります。これにより、ポストバック後にドロップダウンリストが以前に設定されていればViewStateから選択された値を取得します。
選択した値を DropDownList1_SelectedIndexChanged で ViewState に格納しようとすると、更新された値ではなく、常に元の値が挿入されます。この場合、ViewState は常に "R" であり、他の選択された値に従って変更されることはありません。
何か案は?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace WebApplication11
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (ViewState["List1_Value"] != null)
{
DropDownList1.SelectedValue = ViewState["List1_Value"].ToString();
}
else
{
DropDownList1.SelectedValue = "R";
}
}
protected void DropDownList1_SelectedIndexChanged(object sender, EventArgs e)
{
ViewState["List1_Value"] = DropDownList1.SelectedValue.ToString();
}
}
}