Asp.net 如何获取Radiobutton SelectedItem.Text。从网格视图

Asp.net 如何获取Radiobutton SelectedItem.Text。从网格视图,asp.net,gridview,Asp.net,Gridview,请帮帮我 我有一个名为GridViewGender的Gridview,带有RadioButtonList 内联代码是 <asp:GridView ID="GridViewGender" runat="server" AutoGenerateColumns="False" Width="494px" DataKeyNames="ren"> <Columns> <asp:BoundField DataFiel

请帮帮我 我有一个名为GridViewGender的Gridview,带有RadioButtonList 内联代码是

<asp:GridView ID="GridViewGender" runat="server"
        AutoGenerateColumns="False"  
       Width="494px" DataKeyNames="ren">

    <Columns>

        <asp:BoundField DataField="ren" HeaderText="Items" />

        <asp:TemplateField HeaderText="Attendance" >
            <ItemTemplate>

                <asp:RadioButtonList  ID="RadioButtonListGender" runat="server" Enabled="true"
                     RepeatDirection="Horizontal" TextAlign="Left"  
                      >
                <asp:ListItem Value="1">Male</asp:ListItem>
                <asp:ListItem Value="2">Female</asp:ListItem>                       

                </asp:RadioButtonList>
            </ItemTemplate>

        </asp:TemplateField>
    </Columns>
</asp:GridView> 

 protected void Page_Load(object sender, EventArgs e)
    {
        MyClass obj = new MyClass ();
        GridViewGender.DataSource = obj.check();
        GridViewGender.DataBind();
    }

protected void Button1_Click(object sender, EventArgs e)
{
    List<string> checking = new List<string>();
    for(int i = 0 ; i < GridViewGender.Rows.Count ; i ++)
    {
        GridViewRow row = GridViewGender.Rows[i];
         string  rr = Convert.ToString( ((RadioButtonList)row.FindControl("RadioButtonListGender")).SelectedItem.Text)   ;
         checking .Add((string.IsNullOrEmpty(rr)) ? string.Empty : rr);
    }
}

男性
女性
受保护的无效页面加载(对象发送方、事件参数e)
{
MyClass obj=新的MyClass();
GridViewGender.DataSource=obj.check();
GridViewGender.DataBind();
}
受保护的无效按钮1\u单击(对象发送者,事件参数e)
{
列表检查=新建列表();
对于(int i=0;i
看起来每次加载页面时都在重新绑定GridView,因此用户的选择可能会被覆盖


按要求。

好的旧
怎么样!iPostback
用于绑定

protected void Page_Load()
{
    if (!IsPostBack)
    {
       // Binding code
    }
}
并在GridView声明中使用
EnableViewState=“true”
,这样数据就不会在每次页面加载时反弹


此外,如果您在强制转换时遇到问题,您可以尝试将
行.Cells[1].Controls[1]强制转换为RadioButtonList
而不是FindControl。

每次加载页面时,您都会重新绑定GridView,因此用户的选择可能会被覆盖。@Joel这应该是答案。