网格视图选定的索引

时间:2013-11-04 03:50:25

标签: c# asp.net gridview

我有一个包含编辑按钮的网格。当我单击编辑按钮并进行调试时,它没有点击选定的索引更改事件。没有构建错误

网格背后的代码

public void btnModemDetailsEdit_Click(object sender, EventArgs e)
{
    isEdit = true;
}

protected void gridModemDetails_SelectedIndexChanged(object sender, EventArgs e)
{
    int id = Convert.ToInt32(GridModemDetails.DataKeys[GridModemDetails.SelectedIndex].Values["gridModemDetails_SelectedIndexChanged"].ToString());
}

<asp:GridView ID="GridModemDetails" runat="server" Width="435px" 
              DataKeyNames="ModemId" AllowPaging="True"
              OnSelectedIndexChanged="gridModemDetails_SelectedIndexChanged"
              AutoGenerateColumns="False">
    <Columns>
        <asp:TemplateField HeaderText="Edit" Visible="True" >
            <ItemTemplate>
                <asp:LinkButton ID="btnModemDetailsEdit" 
                                AccessibleHeaderText="Edit" 
                                ButtonType="Button" 
                                Text="Edit" 
                                HeaderText="Edit" 
                                runat="server" 
                                OnClick="btnModemDetailsEdit_Click"/>
            </ItemTemplate>
        </asp:TemplateField>

1 个答案:

答案 0 :(得分:2)

GridView的{​​{1}}事件与SelectedIndexChanged事件有关。

RowCommand事件触发的简单方法是使用SelectedIndexChanged的{​​{1}}属性,如下所示:

AutoGenerateSelectButton

这将为每行添加一个带有文字GridView的按钮,点击后,<asp:GridView AutoGenerateSelectButton="true" 事件将会触发。


对于编辑按钮,您可以在网格视图标记中使用Select,如下所示:

SelectedIndexChange

现在在您的代码隐藏中,您可以处理CommandField事件,如下所示:

<asp:GridView ...>
    <Columns>
        <asp:CommandField ShowEditButton="True" />
    </Columns>
</asp:GridView>