0

我是 C#/asp 的新手。我正在尝试向用户控件中的转发器控件添加一个复选框。当用户单击复选框时,我想在用户控件所在的页面上捕获该事件。我已经将复选框放在中继器中。这是我在用户控件中的内容。

       <asp:Repeater ID="rOrderItems" runat="server" ><HeaderTemplate>
            <table class="mGrid" ><tr><td width="50%" align="left" >Item</td>
            <td width="20%" align="right">Qty</td>
            <td width="20%" align="center">Remove</td></td></tr></HeaderTemplate>                

            <ItemTemplate >
                <tr>
                <td> <%# DataBinder.Eval(Container.DataItem, "item.ItemNumber")%> </td>
                <td> <%# DataBinder.Eval(Container.DataItem, "Quantity")%> </td>
                 <td> <asp:CheckBox  ID="cbxRemove" AutoPostBack="true" Checked="false" OnCheckedChanged="cbxRemove_CheckedChanged"  runat="server" /></td> 
                </tr>
            </ItemTemplate>
            <FooterTemplate><tr><td>   </td><td>  </td></tr></table>
            </FooterTemplate>
            </asp:Repeater>

在这之后我有点失落。请原谅我的无知,但我正在学习。

谢谢

4

1 回答 1

1

看起来您想要循环删除检查项目。尝试这个:

for (int i = 0; i < rOrderItems.Items.Count; i++) {
  CheckBox chk = (CheckBox)rOrderItems.Items[i].FindControl("cbxRemove");
  if (chk.Checked) {
    //remove this item
  }
}

让我知道它是如何工作的。

于 2012-07-17T15:38:55.163 回答