DetailsView.DataKeyNames プロパティ
アセンブリ: System.Web (system.web.dll 内)

Dim instance As DetailsView Dim value As String() value = instance.DataKeyNames instance.DataKeyNames = value
public: virtual property array<String^>^ DataKeyNames { array<String^>^ get (); void set (array<String^>^ value); }
/** @property */ public String[] get_DataKeyNames () /** @property */ public void set_DataKeyNames (String[] value)
データ ソースのキー フィールドの名前を格納する配列。

DataKeyNames プロパティを使用して、データ ソースの主キーを表すフィールド名のコンマ区切りのリストを指定します。DataKeyNames プロパティが設定されている場合、DetailsView コントロールは、現在のレコードのキー フィールドを表す DataKey オブジェクトを自動的に作成し、DataKey プロパティに格納します。AutoGenerateColumns プロパティも true に設定されている場合、DetailsView コントロールは、DataKeyNames プロパティで指定されているフィールドを自動的に読み取り専用にします。
![]() |
---|
DetailsView コントロールの自動更新、自動削除、および自動挿入の各機能が動作するようにするには、DataKeyNames プロパティを設定する必要があります。 |
行フィールドの Visible プロパティが false に設定されている場合、その行は DetailsView コントロールに表示されず、行のデータはクライアントへのラウンド トリップを行いません。表示されない行のデータをラウンド トリップさせる場合は、そのフィールド名を DataKeyNames プロパティに追加します。

DataKeyNames プロパティを使用して、DetailsView コントロールにバインドされているデータ ソースのキー フィールドを識別する方法のコード例を次に示します。
<%@ Page language="VB" %> <html> <body> <form id="Form1" runat="server"> <h3>DetailsView AutoGenerateDeleteButton Example</h3> <asp:detailsview id="CustomersDetailView" datasourceid="DetailsViewSource" datakeynames="CustomerID" autogeneratedeletebutton="true" autogeneraterows="true" allowpaging="true" runat="server"> <headerstyle backcolor="Navy" forecolor="White"/> </asp:detailsview> <!-- 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="DetailsViewSource" runat="server" ConnectionString= "<%$ ConnectionStrings:NorthWindConnectionString%>" InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)" SelectCommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"> </asp:SqlDataSource> </form> </body> </html>
<%@ Page language="C#" %> <html> <body> <form id="Form1" runat="server"> <h3>DetailsView AutoGenerateDeleteButton Example</h3> <asp:detailsview id="CustomersDetailView" datasourceid="DetailsViewSource" datakeynames="CustomerID" autogeneratedeletebutton="true" autogeneraterows="true" allowpaging="true" runat="server"> <headerstyle backcolor="Navy" forecolor="White"/> </asp:detailsview> <!-- 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="DetailsViewSource" runat="server" ConnectionString= "<%$ ConnectionStrings:NorthWindConnectionString%>" InsertCommand="INSERT INTO [Customers]([CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country]) VALUES (@CustomerID, @CompanyName, @Address, @City, @PostalCode, @Country)" SelectCommand="Select [CustomerID], [CompanyName], [Address], [City], [PostalCode], [Country] From [Customers]"> </asp:SqlDataSource> </form> </body> </html>

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からDetailsView.DataKeyNames プロパティを検索する場合は、下記のリンクをクリックしてください。

- DetailsView.DataKeyNames プロパティのページへのリンク