如何在ASP.NET GridView中获取选定项
使用两个SelectedIndex命令时,如何在SelectedIndex更改处理程序上获取所选项目?我可以通过e.SelectedRow获取所选行,但无法获取所选列如何在ASP.NET GridView中获取选定项,asp.net,gridview,selecteditem,selectedindexchanged,selectcommand,Asp.net,Gridview,Selecteditem,Selectedindexchanged,Selectcommand,使用两个SelectedIndex命令时,如何在SelectedIndex更改处理程序上获取所选项目?我可以通过e.SelectedRow获取所选行,但无法获取所选列 在GridView中有多个SelectCommand是否正确?如果没有,最好的方法是什么?如果不在gridview中选择列,则选择行。如果希望某行的特定字段为“可选”,则可以考虑使用HyrLink字段或ButnFieldand处理事件。但据我所知,无可否认,它是有限的,仅仅通过GridView及其SelectedRow属性无法知道
在GridView中有多个SelectCommand是否正确?如果没有,最好的方法是什么?如果不在gridview中选择列,则选择行。如果希望某行的特定字段为“可选”,则可以考虑使用HyrLink字段或ButnFieldand处理事件。但据我所知,无可否认,它是有限的,仅仅通过GridView及其SelectedRow属性无法知道选中行时行中的哪个字段被“选中”。您不必使用select命令。您可以使用模板字段并向其添加命名命令,然后可以检查在RowCommand事件中单击了哪些字段(并且您还可以获取行索引),请参见下文
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CausesValidation="false"
CommandName="MyCommand" Text="Button" CommandArgument='<%# Container.DataItemIndex %>'></asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if(e.CommandName.Equals("MyCommand"))
{
int row = Int32.Parse(e.CommandArgument.ToString());
}
}