osc*_*tin 4 asp.net gridview webforms
我有一个GridView BoundField定义如下:
<asp:BoundField DataField="Id" />
Run Code Online (Sandbox Code Playgroud)
在代码隐藏中,我可以获取行的实例并读取如下文本:
Row.Cells(0).Text
Run Code Online (Sandbox Code Playgroud)
但是,当我像这样使BoundField不可见时......
<asp:BoundField DataField="Id" Visible="false" />
Run Code Online (Sandbox Code Playgroud)
... Row.Cells(0).Text返回一个空字符串.
我找到的唯一解决方案是创建一个项目并编辑项目模板,在两者中放置一个隐藏字段,然后使用隐藏字段.FindControl().不过,我真的不喜欢这个主意.
使用DataKeyNamesgridview的属性.
<asp:GridView runat="server" ID="MyGridView" DataKeyNames="Id">
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)
并访问此ID值:
var data = MyGridView.DataKeys[RowIndex].Values[KeyIndex]
Run Code Online (Sandbox Code Playgroud)
所以,在你的情况下,它可以如下所述第二排
var data = MyGridView.DataKeys[1].Values[0]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1765 次 |
| 最近记录: |