.net Gridview选择索引更改返回空值
选择返回null的索引行,但如果我删除AutoGenerateColumns=“False”属性,则该属性可以正常工作,但我无法使用AutoGenerateColumns,因为我需要gridview中的文本框 网格视图代码.net Gridview选择索引更改返回空值,.net,vb.net,.net,Vb.net,选择返回null的索引行,但如果我删除AutoGenerateColumns=“False”属性,则该属性可以正常工作,但我无法使用AutoGenerateColumns,因为我需要gridview中的文本框 网格视图代码 <asp:GridView ID="GridView1" runat="server" class="table table-striped table-bordered table-hover" AutoGenerateColumns="False">
<asp:GridView ID="GridView1" runat="server" class="table table-striped table-bordered table-hover" AutoGenerateColumns="False">
<Columns>
<asp:CommandField ShowSelectButton="True" />
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<%# Eval("ID") %>
</ItemTemplate>
</asp:TemplateField >
<asp:TemplateField HeaderText="Case">
<ItemTemplate>
<%# Eval("Case") %>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
首先,如果希望文本框不自动生成列,则应使用TemplateColumns 其次,要获得SelectedIndexChanged中的行,您应该选择该行。在DataGrid中使用按钮是一种很好的方法。但是您应该将其CommandName属性设置为“Select”
好的,我自己解决了,为其他人添加了更新的代码
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("ID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Eval("ID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
Protected Sub GridView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles GridView1.SelectedIndexChanged
Dim TestCase As String = DirectCast(GridView1.SelectedRow.FindControl("Label1"), Label).Text
End Sub