GridView.DataKeys プロパティ

定義

DataKey コントロールの各行のデータ キー値を表す GridView オブジェクトのコレクションを取得します。Gets a collection of DataKey objects that represent the data key value of each row in a GridView control.

public:
 virtual property System::Web::UI::WebControls::DataKeyArray ^ DataKeys { System::Web::UI::WebControls::DataKeyArray ^ get(); };
[System.ComponentModel.Browsable(false)]
public virtual System.Web.UI.WebControls.DataKeyArray DataKeys { get; }
member this.DataKeys : System.Web.UI.WebControls.DataKeyArray
Public Overridable ReadOnly Property DataKeys As DataKeyArray

プロパティ値

DataKeyArray コントロールの各行のデータ キーが格納された GridViewA DataKeyArray that contains the data key of each row in a GridView control.

実装

属性

次の例では、 DataKeysプロパティを使用して、 GridViewコントロールで選択されている行のデータキー値を確認する方法を示します。The following example demonstrates how to use the DataKeys property to determine the data key value of the selected row in a GridView control.


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  void CustomersGridView_SelectedIndexChanged(Object sender, EventArgs e)
  {
    
    // Determine the index of the selected row.
    int index = CustomersGridView.SelectedIndex;
        
    // Display the primary key value of the selected row.
    Message.Text = "The primary key value of the selected row is " +
        CustomersGridView.DataKeys[index].Value.ToString() + ".";
    
  }

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView DataKeys Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView DataKeys Example</h3>

      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>
               
      <br/><br/>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        autogenerateselectbutton="true"    
        datakeynames="CustomerID"
        onselectedindexchanged="CustomersGridView_SelectedIndexChanged"
        runat="server">
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
        
    </form>
  </body>
</html>


<%@ Page language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">

  Sub CustomersGridView_SelectedIndexChanged(ByVal sender As Object, ByVal e As EventArgs)
      
    ' Determine the index of the selected row.
    Dim index As Integer = CustomersGridView.SelectedIndex
        
    ' Display the primary key value of the selected row.
    Message.Text = "The primary key value of the selected row is " & _
        CustomersGridView.DataKeys(index).Value.ToString() & "."
    
  End Sub

</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView DataKeys Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView DataKeys Example</h3>

      <asp:label id="Message"
        forecolor="Red"
        runat="server"/>
               
      <br/><br/>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        autogenerateselectbutton="true"    
        datakeynames="CustomerID"
        onselectedindexchanged="CustomersGridView_SelectedIndexChanged"
        runat="server">
                
      </asp:gridview>
            
      <!-- This example uses Microsoft SQL Server and connects  -->
      <!-- to the Northwind sample database. Use an ASP.NET     -->
      <!-- expression to retrieve the connection string value   -->
      <!-- from the Web.config file.                            -->
      <asp:sqldatasource id="CustomersSource"
        selectcommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>" 
        runat="server"/>
        
    </form>
  </body>
</html>

注釈

プロパティが設定されているGridView場合、コントロールはDataKey 、コントロール内の行ごとにオブジェクトを自動的に作成します。 DataKeyNamesWhen the DataKeyNames property is set, the GridView control automatically creates a DataKey object for each row in the control. オブジェクトには、 DataKeyNamesプロパティで指定されたフィールドの値が格納されます。 DataKeyThe DataKey object contains the values of the field or fields specified in the DataKeyNames property. DataKey コントロールが使用するコントロールのコレクションに追加される DataKeysThe DataKey objects are then added to the control's DataKeys collection. コントロール内DataKeysDataKey特定のデータ行のオブジェクトを取得するには、プロパティを使用します。 GridViewUse the DataKeys property to retrieve the DataKey object for a specific data row in the GridView control.

注意

SelectedDataKeyプロパティを使用して、現在選択DataKeyされている行のオブジェクトを取得できます。You can use the SelectedDataKey property to retrieve the DataKey object for the currently selected row. また、 SelectedValueプロパティを使用して、現在選択されている行のデータキー値を直接取得することもできます。You can also use the SelectedValue property to retrieve the data key value for the currently selected row directly.

適用対象

こちらもご覧ください