私は次のコードを持っています
Page_Load () {
if (!IsPostBack)
{
//data binding to ddl year
} else {
if (ViewState["ddlyear"] != null)
{
ddlyear.SelectedValue = ViewState["ddlyear"].ToString();
}
}
}
ddlyear_SelectedIndexChanged {
ViewState["ddlyear"] = ddlyear.SelectedItem.Value.ToString();
}
ここにエラーがあります。
ページの読み込みddlyearでアイテムを選択します。これにより、ページが再読み込みされ、ddlにアイテムが正しく表示されます。
表示を変更しても、選択した項目は変更されません。
値にブレークポイントを設定するとddlyear.SelectedItem.Value.ToString();
、最初の呼び出しから実際に変更されることはありません。選択したアイテムの値に一度変更されますが、後続のページ呼び出しで別のアイテムが選択されても変更されません。
すなわち
- 最初のページの読み込み-ddlyear=1000
- 別のオプションに変更します。たとえば、1001
- ページのリロード、ddlyear = 1001
- 別のオプションに変更します。たとえば、1002
- ページのリロード、ddlyear= 1002ではなく1001