命令参数字符串在rowcommand事件c#中为空

时间:2017-06-15 11:33:48

标签: c# gridview commandargument

我有一个gridview。在里面我有一个链接按钮。我想获取在rowcommand事件处理程序中单击的按钮的行索引。这可以使用command argument属性完成。但它返回空字符串并获得异常。

这是事件处理程序

中的行
Int indexval = Convert.ToInt32(e.commandArgument.ToString());

我也试过这个来获取行索引。 在aspx页面内:

commandArgument= <%#container.DataItem%>

但是这也会返回空字符串  在rowcommand事件

中尝试这样
Gridview gr = (gridview)sender;
Int Ind = gr.rows.selectedIndex.

这里Ind值显示为-1

有一些问题,但都在VB.net 我希望解决方案是在c#中。

PS我是c#和asp.net

的新手

1 个答案:

答案 0 :(得分:0)

我使用CommandField

将此CommandField添加到GridView <Columns>...</Columns>

<asp:CommandField ShowSelectButton="true" SelectText="View/Edit" ItemStyle-Width="60" />

这与GridView_SelectedIndexChanging相关联,它为您提供RowIndex:

protected void gvCategories_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
    int rowIndex = e.NewSelectedIndex;
}