在DataGrid内部的Repeater里面的Checkboxlist问题(C#)

时间:2013-01-03 17:30:45

标签: c# datagrid repeater checkboxlist

我知道这有点奇怪,但这是有充分理由的。

我有一个DataGrid,在Datagrid里面有一个Repeater,在Repeater里面有一个CheckBoxList

<asp:DataGrid ID="dg" runat="server">
   <Columns>
      <asp:TemplateColumn>
          <ItemTemplate>
              <asp:Repeater ID="rep" runat="server">
                 <ItemTemplate>
                     <asp:CheckBoxList ID="cbl" runat="server" DataTextField="Name" DataValueField="ID"></asp:CheckBoxList>                                
                 </ItemTemplate>
              </asp:Repeater>
          </ItemTemplate>
      </asp:TemplateColumn>
   </Columns>
</Components:ExtendedDataGrid>

这导致了一个相当离奇的问题。单击第一个转发器项目中的标签可以正常工作。但是,在第二个中继器项目中,标签下降。

  • 如果单击第二组中的第二项,则选择第二组中的第一项。
  • 如果单击第3组中的第1项,则选择第2组中的最后一项。
  • 如果单击第3组中的第3项,则会选择第3组中的第1项。

所以,它在第二组中跳过1,在第三组中跳过2,等等。非常奇怪。

当我查看源代码时,我可以看到标签上的“for”属性确实是错误的。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

好的......我终于回到了这一点并想出来了。我实际上在复选框列表旁边有一个隐藏的字段,我没有提到。出于某种原因,当我把它拿出来时,其他一切都开始正常工作。