リピーター内で dropDownList の選択された項目を設定するにはどうすればよいですか?
コード ビハインドでは、リピーターは repeaterData DataTable にバインドされ、dropDownList は dropDownList DataTable にバインドされます。DropDownList の SelectedValue プロパティを repeaterData テーブルのフィールドの値に設定する必要があります。
これは私が試したことです:
<asp:Repeater runat="server" ID="myRepeater>
<ItemTemplate>
<asp:DropDownList runat="server" CssClass="fullSelect" ID="degree_dropdown"
AppendDataBoundItems="true"
selectedValue='<%#DataBinder.Eval(Container.DataItem,"degreeCode")%>'>
<asp:ListItem Text="Select Degree" />
</asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
リピーターを設定するコード:
myRepeater.DataSource = myRepeaterData; //myRepeaterData is a datatable
myRepeater.DataBind();
ドロップダウンリストに入力するコード:
protected void educationPopup_repeater_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
DropDownList degree_dropdown = e.Item.FindControl("degree_dropdown") as DropDownList;
if (degree_dropdown != null)
{
degree_dropdown.DataSource = degrees; //a datatable
degree_dropdown.DataTextField = "degree";
degree_dropdown.DataValueField = "code";
degree_dropdown.DataBind();
}
}