asp.netアプリケーションがあり、ユーザーコントロールにリピーターを追加し、リピーター内に追加しましたasp Checkbox
<asp:Repeater ID="Repeater1" runat="server"
onitemdatabound="Repeater1_ItemDataBound"
onitemcommand="Repeater1_ItemCommand" >
<ItemTemplate>
<table>
<tr>
<td>
<asp:CheckBox runat="server" ID="chkSelect" AutoPostBack="true" Visible="false" OnCheckedChanged="chkSelect_CheckedChanged" />
</td>
CodeBehind ファイル内:
protected void chkSelect_CheckedChanged(object sender, EventArgs e)
{
string s = "";
}
ただし、チェックボックスをクリックしてもイベントは発生しません。
また、リピーター コントロールの itemDataBound イベントが発生したときに、イベントを動的に追加しようとしました。
<asp:Repeater ID="Repeater1" runat="server"
onitemdatabound="Repeater1_ItemDataBound"
onitemcommand="Repeater1_ItemCommand" >
<ItemTemplate>
<table>
<tr>
<td>
<asp:CheckBox runat="server" ID="chkSelect" AutoPostBack="true" Visible="false" />
</td>
コードビハインドで:
protected void Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
{
if (((DataRowView)e.Item.DataItem).Row["DataType"].ToString().Trim().Equals("bool"))
{
CheckBox chkSelect = (CheckBox)e.Item.FindControl("chkSelect");
chkSelect.CheckedChanged += new EventHandler(chkSelect_CheckedChanged);
chkSelect.Visible = true;
}
しかし、まだイベントは発生しません..
Repeater コントロール内にある CheckBox コントロールのイベントを呼び出す方法...