Asp.Net教程,WinForm教程,Asp.Net MVC,vs2008教程,vs2010教程,Silverlight技术,源码下载,Asp.Net视频教程
全站热门标签
vs2010 Silverlight 存储过程 水晶报表 LINQ ADO.NET JavaScript DataGridView GridView AjaxPro DevExpress 面向对象 Extjs XML HTML教程 Oracle jQuery WPF MVC 分页 Office2010 GDI+ Visual C++2010 Dojo MySQL VB.NET WCF4.0 ASPxGridView WinForm textbox Sql2005 cookie Discuz!NT checkbox WCF SQL经典语句 T-SQL F# asp.net VS2008 SQL Ajax DropDownList VS2008新特性 TreeView Access Flex 页面执行时间 字符串 DataSet VB2005 回调 动画 C#时间 游戏 ASP.NET MVC
尚未分类 LINQ教程 Enterprise技术 性能优化/调试 水晶报表与打印 安全与加密 图形图像 文件处理 基础教程 Web Services 内置对象控件示例 正则表达式\采集 ADO.NET 缓存\泛型\线程 XML技术 Url重写\静态页 vs2008综合教程
当前位置: 主页 > ASP.NET教程 > 控件示例 >

GridView的DataKeyNames属性

时间:2009-09-30 00:32来源:未知 作者:admin 点击:


获取或设置一个数组,该数组包含了显示在 GridView 控件中的项的主键字段的名称。

命名空间:System.Web.UI.WebControls

备注
使用 DataKeyNames 属性指定表示数据源主键的字段。

注意
若要以声明方式设置此属性,请使用以逗号分隔的字段名列表。
 


当设置了 DataKeyNames 属性时,GridView 控件用来自指定字段的值填充它的 DataKeys 集合,这提供了一种访问每个行的主键的便捷方法。

注意
GridView 控件以控件状态存储这些键字段值。如果这些值包含敏感信息,则强烈建议您通过将 ViewStateEncryptionMode 属性设置为 ViewStateEncryptionMode.Always 来启用视图状态加密。



在使用自动生成的字段列时(通过将 AutoGenerateColumns 属性设置为 true),GridView 控件自动确保与 DataKeyNames 属性中指定的字段相对应的自动生成字段列是只读的。

注意
为了使 GridView 控件的自动更新和删除功能工作,必须设置 DataKeyNames 属性。为了匹配要更新或删除的行,这些键字段的值被传递到数据源控件。


如果将某个列字段的 Visible 属性设置为 false,则在 GridView 控件中将不显示该列,该列中的数据也不会往返于客户端。如果希望某个不可见的列中的数据可以进行往返,则向 DataKeyNames 属性添加相应的字段名称。

示例
下面的代码示例演示如何使用 DataKeyNames 属性指定数据源的键字段。

 <%@ Page language="C#" %>

<html>
  <body>
    <form runat="server">
       
      <h3>GridView Edit Example</h3>

    
      <asp:gridview id="CustomersGridView"
        datasourceid="CustomersSqlDataSource"
        autogeneratecolumns="true"
        autogeneratedeletebutton="true"
        autogenerateeditbutton="true"
        datakeynames="CustomerID" 
        runat="server">
      </asp:gridview>
           
   
      <asp:sqldatasource id="CustomersSqlDataSource" 
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        updatecommand="Update Customers SET CompanyName=@CompanyName, Address=@Address, City=@City, PostalCode=@PostalCode, Country=@Country WHERE (CustomerID = @CustomerID)"
        deletecommand="Delete from Customers where CustomerID = @CustomerID"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
           
    </form>
  </body>
</html>

 

Tags:GridView
责任编辑:admin
返回顶部
------分隔线----------------------------
推荐内容
骆驼户外男 真皮磨砂日常休闲鞋 低帮 2011秋冬新款 专柜正品特价 骆驼户外男 真皮磨砂日常休闲鞋 低帮 2011秋冬新款 专柜正品特价