如何检测DataGrid中的单选按钮何时被选中?

时间:2015-06-08 19:53:20

标签: asp.net vb.net datagrid

我的webapge上有一个DataGrid,如下所示:

<asp:datagrid id="dgCodes" runat="server" bodyHeight="300px" CssClass="tblScroll" Width="100%">
    <Columns>
        <asp:TemplateColumn ItemStyle-HorizontalAlign="Center" HeaderStyle-CssClass="clsGridHeaderText"
            HeaderStyle-Wrap="False" HeaderStyle-Width="10%" ItemStyle-Width="10%">
            <HeaderTemplate>
                Select
            </HeaderTemplate>
            <ItemTemplate>
                <INPUT type="radio" name="chkSelect"  TabIndex="-1" value='<%# DataBinder.Eval(Container, "DataItem.Code") %>' onclick="mfpSetCode(this);"  <%# mfpDisable(DataBinder.Eval(Container, "DataItem.Code")) %>>
            </ItemTemplate>
        </asp:TemplateColumn>
    </Columns>
</asp:datagrid>

因此,有一个标题为“选择”的单选按钮列,然后在数据绑定到DataGrind后添加几列。

当用户在此DataGrid中选择一个单选按钮时,它应该使用其中一个绑定列中的唯一值填充2个子DataGrids。

我能够为网格设置一个SelectedIndexChanged事件,希望能够捕获单选按钮列的选择,然后我可以通过这种方式获取数据,但事实并非如此。

如果选择这样的RB,我怎样才能获得一些数据?

1 个答案:

答案 0 :(得分:1)

请改用<asp:RadioButton>。这将为您提供OnCheckChanged事件。

<asp:RadioButton ID="rbSelect" runat="server"
    Text='<%# DataBinder.Eval(Container, "DataItem.Code") %>'
    OnCheckChanged="rbSelect_CheckChanged"
    AutoPostBack="true" />

然后在你的代码中处理事件。

Protected Sub rbSelect_CheckChanged(ByVal sender As Object, ByVal e As EventArgs)
{

}