2017-04-17 55 views
-1

我有一个RadGrid,它有一个包含asp:CheckBox和一个标签的模板列,所以label有一个“for”属性,其值等于复选框的ID,所以我想设置复选框ID为“for”属性为标签 这种情况下,将复选框的样式更改为Google的Material Design, ,我的asp.net是C#, 我做了这种情况在VB语言,我想这样做在C# ,这就是我在VB中已经做了代码的伟大工程==>Telerik RadGrid获取每个GridItem或行内联控件的客户端ID

<telerik:GridTemplateColumn AllowFiltering="false"> 
         <ItemTemplate> 
          <asp:CheckBox ID="cbxSelect" runat="server" onClick="checkboxClicked(event, 'cbxSelect')"></asp:CheckBox> 
          <label for="<%# DirectCast(Container, GridViewRow).FindControl("cbxSelect").ClientID %>"></label> 
         </ItemTemplate> 
</telerik:GridTemplateColumn> 

任何想法?

+0

DirectCast不具有当量。在C#中,你可以检查到这个线程:http://stackoverflow.com/questions/2683847/cs-equivalent-to-vb-nets-directcast –

+0

这也可能工作: ((GridViewRow)Container).FindControl( “cbxSelect”)。ClientID –

+0

@KevinRaffay您的解决方案就像一个魅力,你很棒,你保存了我的日期,只是如果你可以发布上述答案,所以我可以标记为已回答谢谢。 –

回答

0

这也工作:((GridViewRow)集装箱).FindControl( “cbxSelect”)客户端ID