B
Beginner
I have the following aspx and code behind to put a checkbox in repeater.
There are several problems:
- CheckBox2_CheckedChanged works well. But I want to know who is being
checked, i.e. how can I pass userid back as an argument? (I can get checkbox
client ID or checkbox text, but they do not serve the purpose well)
- repRoles_ItemCommand seems never fired, any hints on that?
Thanks.
==========================================================
<asp:repeater id="repRoles" runat="server"
OnItemCreated="repRoles_ItemCreated"
OnItemCommand="repRoles_ItemCommand">
<ItemTemplate>
<tr>
<td><%# DataBinder.Eval(Container.DataItem, "userid")%></td>
<td><asp:CheckBox id="CheckBox2"
AutoPostBack=True runat="server"
Checked='<%#(DataBinder.Eval(Container.DataItem,
"manager").ToString()=="1")
?true:false%>'></asp:CheckBox>
</td>
</tr>
</ItemTemplate>
===========================================================
protected void repRoles_ItemCommand(object source,
System.Web.UI.WebControls.RepeaterCommandEventArgs e) {
this.Response.Write("repRoles_ItemCommand<br>");
Response.Write("Name:");
Response.Write(e.CommandName);
}
protected void repRoles_ItemCreated(object sender,
System.Web.UI.WebControls.RepeaterItemEventArgs e) {
RepeaterItem ri=(RepeaterItem)e.Item;
if(ri.ItemType==ListItemType.Item||ri.ItemType==ListItemType.AlternatingItem
) {
CheckBox CheckBox2=ri.FindControl("CheckBox2") as CheckBox;
CheckBox2.CheckedChanged +=new EventHandler(CheckBox2_CheckedChanged);
}
}
private void CheckBox2_CheckedChanged(object sender, EventArgs e) {
CheckBox CheckBox2=(CheckBox)sender;
Response.Write(CheckBox2.ClientID);
if(CheckBox2.Checked) {
this.Response.Write("Checked<br>");
} else {
this.Response.Write("Unchecked<br>");
}
}
There are several problems:
- CheckBox2_CheckedChanged works well. But I want to know who is being
checked, i.e. how can I pass userid back as an argument? (I can get checkbox
client ID or checkbox text, but they do not serve the purpose well)
- repRoles_ItemCommand seems never fired, any hints on that?
Thanks.
==========================================================
<asp:repeater id="repRoles" runat="server"
OnItemCreated="repRoles_ItemCreated"
OnItemCommand="repRoles_ItemCommand">
<ItemTemplate>
<tr>
<td><%# DataBinder.Eval(Container.DataItem, "userid")%></td>
<td><asp:CheckBox id="CheckBox2"
AutoPostBack=True runat="server"
Checked='<%#(DataBinder.Eval(Container.DataItem,
"manager").ToString()=="1")
?true:false%>'></asp:CheckBox>
</td>
</tr>
</ItemTemplate>
===========================================================
protected void repRoles_ItemCommand(object source,
System.Web.UI.WebControls.RepeaterCommandEventArgs e) {
this.Response.Write("repRoles_ItemCommand<br>");
Response.Write("Name:");
Response.Write(e.CommandName);
}
protected void repRoles_ItemCreated(object sender,
System.Web.UI.WebControls.RepeaterItemEventArgs e) {
RepeaterItem ri=(RepeaterItem)e.Item;
if(ri.ItemType==ListItemType.Item||ri.ItemType==ListItemType.AlternatingItem
) {
CheckBox CheckBox2=ri.FindControl("CheckBox2") as CheckBox;
CheckBox2.CheckedChanged +=new EventHandler(CheckBox2_CheckedChanged);
}
}
private void CheckBox2_CheckedChanged(object sender, EventArgs e) {
CheckBox CheckBox2=(CheckBox)sender;
Response.Write(CheckBox2.ClientID);
if(CheckBox2.Checked) {
this.Response.Write("Checked<br>");
} else {
this.Response.Write("Unchecked<br>");
}
}