我有一张表, 表的key是一个具有IDENTITY属性的列, 所以不应该暴露在界面上给用户, 但是如果不让key成为DataGrid上的一列, 很多时候我又没有办法知道用户操作的是数据库中哪个记录.
DataGrid有没有什么隐藏列之类的东西啊? 即编程人员可以通过编程改写或得到上面的内容,但是对于用户不可见. 如果有像MFC中的CListCtrl::SetItemData功能就最好了.
http://dotnet.aspx.cc/ShowDetail.aspx?id=9EBB267B-E69D-460F-B4C7-BE08CA290C0F
可以在cs文件里隐藏列
for(int i=0;i<datagrid.item.count;i++)
{
datagrid.item[i].cells[k].visible = false;
}
k指你所要隐藏的列的索引
可以在做aspx页面的时候将该主键列设置为不可见就行了,但程序里面照样可以访问到该主键值的
<asp:BoundColumn DataField="IDENTITY" Visible=False>
你把那个列隐藏就可以了,后台照样可以读取到
不用加控件,用DataGrid的主键属性:
<asp:DataGrid id="grdGroupItem" runat="server" DataKeyField="ID" Width="100%">
OR
this.DataGrid.DataKeyField = "ID";
DataSet也支持根据主键查询