GridView.Columns プロパティ

定義

DataControlField コントロールの列フィールドを表す GridView オブジェクトのコレクションを取得します。

public:
 virtual property System::Web::UI::WebControls::DataControlFieldCollection ^ Columns { System::Web::UI::WebControls::DataControlFieldCollection ^ get(); };
[System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)]
public virtual System.Web.UI.WebControls.DataControlFieldCollection Columns { get; }
[<System.Web.UI.PersistenceMode(System.Web.UI.PersistenceMode.InnerProperty)>]
member this.Columns : System.Web.UI.WebControls.DataControlFieldCollection
Public Overridable ReadOnly Property Columns As DataControlFieldCollection

プロパティ値

DataControlFieldCollection コントロール内のすべての列フィールドが格納された GridView

属性

次の例では、コレクションを宣言的に設定する方法を Columns 示します。


<%@ 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>GridView Columns Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView Columns Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        runat="server">
        
        <columns>
          <asp:boundfield datafield="CustomerID" headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName" headertext="Company Name"/>
          <asp:boundfield datafield="Address" headertext="Address"/>
          <asp:boundfield datafield="City" headertext="City"/>
          <asp:boundfield datafield="PostalCode" headertext="Postal Code"/>
          <asp:boundfield datafield="Country" headertext="Country"/>
        </columns>
                
      </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">
<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>GridView Columns Example</title>
</head>
<body>
    <form id="form1" runat="server">
        
      <h3>GridView Columns Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSource" 
        autogeneratecolumns="true"
        emptydatatext="No data available." 
        runat="server">
        
        <columns>
          <asp:boundfield datafield="CustomerID" headertext="Customer ID"/>
          <asp:boundfield datafield="CompanyName" headertext="Company Name"/>
          <asp:boundfield datafield="Address" headertext="Address"/>
          <asp:boundfield datafield="City" headertext="City"/>
          <asp:boundfield datafield="PostalCode" headertext="Postal Code"/>
          <asp:boundfield datafield="Country" headertext="Country"/>
        </columns>
                
      </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 表します。 Columnsプロパティ (コレクション) は、コントロールにレンダリングされるすべての明示的に宣言された列フィールドをGridView格納するために使用されます。 コレクションを Columns 使用して、列フィールドのコレクションをプログラムで管理することもできます。

注意

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

列フィールドは、列フィールドがコレクションに表示される順序でコントロールにColumns表示されますGridView。 次の表は、 クラスから DataControlField 派生し、コレクションで使用できるさまざまな列フィールド クラスを Columns 示しています。

列フィールドの種類 [説明]
BoundField データ ソース内のフィールドの値を表示します。 これは、コントロールの既定の列の GridView 種類です。
ButtonField コントロール内の各項目のコマンド ボタンを GridView 表示します。 これにより、[追加] ボタンや [削除] ボタンなどのカスタム ボタン コントロールの列を作成できます。
CheckBoxField コントロール内の各項目のチェック ボックスを GridView 表示します。 この列フィールド型は、ブール値を持つフィールドを表示するために一般的に使用されます。
CommandField 選択、編集、または削除の操作を実行するための定義済みのコマンド ボタンを表示します。
HyperLinkField データ ソース内のフィールドの値をハイパーリンクとして表示します。 この列フィールド型を使用すると、2 番目のフィールドをハイパーリンクの URL にバインドできます。
ImageField コントロール内の各項目の画像を GridView 表示します。
TemplateField 指定したテンプレートに従って、コントロール内の各項目の GridView ユーザー定義コンテンツを表示します。 この列フィールド型を使用すると、ユーザー設定の列フィールドを作成できます。

コレクションに列フィールドを Columns プログラムで追加することはできますが、コントロールで GridView 宣言的に列フィールドを一覧表示し、各列フィールドの プロパティを Visible 使用して各列フィールドを表示または非表示にする方が簡単です。

Visible列フィールドの プロパティが にfalse設定されている場合、列はコントロールにGridView表示されず、列のデータはクライアントへのラウンド トリップを行いません。 ラウンド トリップを行うために表示されない列のデータが必要な場合は、フィールド名を DataKeyNames プロパティに追加します。

適用対象

こちらもご覧ください