DropDownList
ページの読み込み時にバインドしている があります。ボタンも何もありません。ユーザーがドロップダウンで値を選択するとすぐに、その値をラベルに表示する必要があります。なぜこれが機能しないのかわかりません。助けてください。
public string SelectedStore { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
BindStoresList();
}
}
protected void BindStoresList()
{ storeDDList.AppendDataBoundItems = true;
storeDDList.Items.Add(new ListItem("Select store", "-1"));
TempCollection stores = TempDataSource.LoadForCriteria("ALL", "Code ASC");
storeDDList.DataSource = stores;
storeDDList.DataTextField = "DisplayName";
storeDDList.DataValueField = "Code";
storeDDList.DataBind();
}
protected void storeDDList_SelectedIndexChanged(object sender, EventArgs e)
{
SelectedStore = storeDDList.SelectedValue.ToString();
selectedItem.Text = SelectedStore;
}
ドロップダウンの値に応じてバインドするグリッドビューを追加するので、jquery のようなものは必要ありません。
****** EDITS *******
ページの更新時に設定AutoPostBack=True
すると、Page_Load メソッドでわかるように、DropDownList はまったくバインドされず、メソッドは呼び出されませんBindStoresList()
。
***** ANSWER *****
これに行き詰まるかもしれない人々のために..
の を に設定しEnableViewState
てTrue
いたDropDownList
ので、ページの更新後SelectedValue
に が失われていました。を削除し、正常に動作するようEnableviewState
に設定AutoPostBack
した後Ture
...