次の方法で共有


DetailsView.AutoGenerateRows プロパティ

定義

データ ソース内の各フィールドの行フィールドを自動的に生成して DetailsView コントロールに表示するかどうかを示す値を取得または設定します。

public:
 virtual property bool AutoGenerateRows { bool get(); void set(bool value); };
public virtual bool AutoGenerateRows { get; set; }
member this.AutoGenerateRows : bool with get, set
Public Overridable Property AutoGenerateRows As Boolean

プロパティ値

データ ソース内の各フィールドにバインドされる行フィールドを自動的に生成して表示する場合は true。それ以外の場合は false。 既定値は、true です。

次のコード例では、 プロパティを使用して、データ ソース内の AutoGenerateRows 各フィールドにバインドされた行フィールドを自動的に作成する方法を示します。


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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView AutoGenerateRows Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AutoGenerateRows Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          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="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>DetailsView AutoGenerateRows Example</title>
</head>
<body>
    <form id="Form1" runat="server">
        
      <h3>DetailsView AutoGenerateRows Example</h3>
                
        <asp:detailsview id="CustomerDetailView"
          datasourceid="DetailsViewSource"
          datakeynames="CustomerID"
          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>

注釈

コントロール内の DetailsView 各データ行は、行フィールドで表されます。 プロパティが AutoGenerateRowstrue設定されている場合、データ ソース内の各フィールドに対して、自動的に生成されたバインド行フィールドが作成されます。 各フィールドは、データ ソースに各フィールドが表示される順序で、行にテキストとして表示されます。

注意

自動的に生成されたバインドされた行フィールドはコレクションに Fields 追加されません。

行を自動的に生成すると、レコード内のすべてのフィールドをすばやく簡単に表示できます。 ただし、コントロールの高度な機能を DetailsView 使用するには、コントロールに含める行フィールドを明示的に宣言する DetailsView 必要があります。 詳細については、「Fields」を参照してください。

Note

明示的に宣言された行フィールドは、自動的に生成される行フィールドと組み合わせて使用できます。 両方を使用すると、明示的に宣言された行フィールドが最初にレンダリングされ、その後に自動的に生成された行フィールドが表示されます。

AutoGenerateRows 値はビュー ステートに格納されます。

適用対象

こちらもご覧ください