Событие команды строки gridview не срабатывает для radiobuttinlist в asp.net

У меня есть список rdiobutton в поле ItemTemlet в gridview, для которого установлено ispostback = true, но все же список радиокнопок не запускает событие row_command для gridview. Если я делаю то же самое для кнопки, то все работает нормально. Я написал код для привязки сетки в (! IspostBack), но проблема все еще существует. Как я могу избавиться от них.

Это код для моей сетки.

<asp:GridView ID="grdSalesPerson" runat="server" AutoGenerateColumns="False" BackColor="#DEBA84" OnRowCommand="grdSalesPerson_RowCommand">
                    <Columns>
                        <asp:BoundField DataField="SalesPersonID" HeaderText="SalesPersonID" />
                        <asp:BoundField DataField="FirstName" HeaderText="First Name" />
                        <asp:BoundField DataField="LastName" HeaderText="Last Name" />
                        <asp:BoundField DataField="UserName" HeaderText="User Name" />
                        <asp:BoundField DataField="StateName" HeaderText="State Name" />
                        <asp:BoundField DataField="CityName" HeaderText="City Name" />

                        <asp:TemplateField HeaderText="Is Active">
                            <ItemTemplate>
                                <asp:RadioButtonList ID="rbActive" runat="server" CommandName="IsAct" AutoPostBack="true">
                                    <asp:ListItem>Yes</asp:ListItem>
                                    <asp:ListItem>No</asp:ListItem>
                                </asp:RadioButtonList>
                            </ItemTemplate>
                        </asp:TemplateField>  
                    </Columns>
                </asp:GridView>

Это код события Row_Command.

protected void grdSalesPerson_RowCommand(object sender, System.Web.UI.WebControls.GridViewCommandEventArgs e)
{
    if (e.CommandName == "IsAct")
    {
        //  GridViewRow row = (GridViewRow) (((Button)grdSalesPerson.FindControl("btnIsActive")).NamingContainer);
        GridViewRow row = (GridViewRow)(((RadioButton)e.CommandSource).NamingContainer);
        int i = Convert.ToInt32(row.Cells[0].Text);
    }
}

person Microsoft Developer    schedule 23.01.2012    source источник
comment
что вы получаете в e.commandname, когда вы проверяете любой из переключателей. Подключите отладчик и проверьте значение.   -  person ankur    schedule 23.01.2012
comment
Я устанавливаю точку останова в начале события grdSalesPerson_RowCommand, но оно вообще не запускает событие. Но он запускает событие обратной передачи.   -  person Microsoft Developer    schedule 23.01.2012
comment
Вы вручную создали это событие. так как ваше событие не создано должным образом. используйте смарт-тег и снова создайте событие. Я думаю, что у вас уже есть повторяющийся вопрос не запускает событие команды строки при выборе списка переключателей"> stackoverflow.com/questions/8486368/   -  person ankur    schedule 23.01.2012
comment
Я не создавал это событие вручную. На самом деле одно и то же событие работает для кнопки.   -  person Microsoft Developer    schedule 23.01.2012