CommandField クラス

定義

データ バインドされたコントロールでの選択、編集、挿入、または削除の各操作を実行するコマンド ボタンを表示する特別なフィールドを表します。

public ref class CommandField : System::Web::UI::WebControls::ButtonFieldBase
public class CommandField : System.Web.UI.WebControls.ButtonFieldBase
type CommandField = class
    inherit ButtonFieldBase
Public Class CommandField
Inherits ButtonFieldBase
継承

次のコード例では、フィールドを使用してコントロールを CommandField 表示し、コントロール内のレコードを編集する方法を GridView 示します。


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

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            headertext="Edit Controls"/>
          <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="ZIP 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="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)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </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>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            headertext="Edit Controls"/>
          <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="ZIP 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="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)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

次のコード例では、および UpdateText プロパティをCancelTextEditText使用して、編集コントロールのテキストをカスタマイズする方法を示します。


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

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            edittext="Edit Customer"
            canceltext="Discard"
            updatetext="Revise"
            headertext="Edit Controls"/>
          <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="ZIP 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="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)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </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>CommandField Example</title>
</head>
<body>
    <form id="form1" runat="server">
      
      <h3>CommandField Example</h3>

      <asp:gridview id="CustomersGridView" 
        datasourceid="CustomersSqlDataSource" 
        autogeneratecolumns="false"
        datakeynames="CustomerID"  
        runat="server">
        
        <columns>
          <asp:commandfield showeditbutton="true"
            edittext="Edit Customer"
            canceltext="Discard"
            updatetext="Revise"
            headertext="Edit Controls"/>
          <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="ZIP 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="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)"
        connectionstring="<%$ ConnectionStrings:NorthWindConnectionString%>"
        runat="server">
      </asp:sqldatasource>
            
    </form>
  </body>
</html>

注釈

クラスはCommandField、削除、編集、挿入、または選択操作を実行するコマンド ボタンを表示するために、データ バインド コントロール (や DetailsViewなどGridView) によって使用される特殊なフィールドです。 これらの操作を実行するコマンド ボタンは、次の表に示すプロパティを使用して表示または非表示にすることができます。

プロパティ 説明
ShowDeleteButton データ バインド コントロール内の各レコードのフィールドの CommandField [削除] ボタンを表示または非表示にします。 [削除] ボタンを使用すると、ユーザーはデータ ソースからレコードを削除できます。
ShowEditButton データ バインド コントロールの各レコードのフィールドの CommandField [編集] ボタンを表示または非表示にします。 [編集] ボタンを使用すると、ユーザーはデータ ソースからレコードを編集できます。 ユーザーが特定のレコードの [編集] ボタンをクリックすると、その [編集] ボタンが [更新] ボタンと [キャンセル] ボタンに置き換えられます。 他のすべてのコマンド ボタンも非表示になります。
ShowInsertButton フィールドの [新規] ボタンを CommandField 表示または非表示にします。 [新規] ボタンを使用すると、ユーザーはデータ ソースに新しいレコードを挿入できます。 ユーザーが [新規] ボタンをクリックすると、[挿入] ボタンと [キャンセル] ボタンに置き換えられます。 他のすべてのコマンド ボタンも非表示になります。 メモ: このプロパティは、コントロールなどの DetailsView 挿入操作をサポートするデータ バインド コントロールにのみ適用されます。
ShowSelectButton データ バインド コントロールの各レコードのフィールドの CommandField [選択] ボタンを表示または非表示にします。 [選択] ボタンを使用すると、ユーザーはデータ バインド コントロール内のレコードを選択できます。

また、レコードが編集モードまたは挿入モードのときに表示される [キャンセル] ボタンは、 プロパティを設定 ShowCancelButton することで表示または非表示にすることができます。

注意

データ バインド コントロールをデータ ソース コントロール (コントロールなど SqlDataSource ) と組み合わせて使用する場合、データ バインド コントロールはデータ ソース コントロールの機能を利用し、自動削除、更新、挿入機能を提供できます。 他のデータ ソースの場合は、データ バインド コントロールの適切なイベント中にこれらの操作を実行するルーチンを提供する必要があります。

フィールドは CommandField 、使用されているデータ バインド コントロールによって異なる方法で表示されます。 たとえば、コントロールは GridView フィールドを CommandField 列として表示し、コントロールは DetailsView フィールドを行として表示します。

表示するボタンの種類を指定するには、 プロパティを ButtonType 使用します。 プロパティが ButtonType または ButtonType.LinkButtonType.Button設定されている場合は、次の表に示すプロパティを設定することで、ボタンに表示するテキストを指定できます。

プロパティ 説明
CancelText [キャンセル] ボタンのキャプション。
DeleteText [削除] ボタンのキャプション。
EditText [編集] ボタンのキャプション。
InsertText [挿入] ボタンのキャプション。 メモ: このプロパティは、 コントロールなどの DetailsView 挿入操作をサポートするデータ バインド コントロールにのみ適用されます。
NewText [新規] ボタンのキャプション。 メモ: このプロパティは、 コントロールなどの DetailsView 挿入操作をサポートするデータ バインド コントロールにのみ適用されます。
SelectText [選択] ボタンのキャプション。
UpdateText [更新] ボタンのキャプション。

コマンド ボタンまたはリンク ボタンを表示する代わりに、 プロパティを にButtonType.Image設定ButtonTypeし、次の表に示すプロパティを設定することで、画像ボタンを表示できます。

プロパティ 説明
CancelImageUrl [キャンセル] ボタンに表示する画像
DeleteImageUrl [削除] ボタンに表示する画像。
EditImageUrl [編集] ボタンに表示する画像。
InsertText [挿入] ボタンに表示する画像。 メモ: このプロパティは、 コントロールなどの DetailsView 挿入操作をサポートするデータ バインド コントロールにのみ適用されます。
NewImageUrl [新規] ボタンに表示する画像。 メモ: このプロパティは、 コントロールなどの DetailsView 挿入操作をサポートするデータ バインド コントロールにのみ適用されます。
SelectImageUrl [選択] ボタンに表示する画像。
UpdateImageUrl [更新] ボタンに表示する画像。

既定では、ユーザーがフィールド内 CommandField のボタンをクリックすると、ページ上のすべての検証コントロールに対して検証が実行されます。 ボタンがクリックされたときに検証が行われないようにするには、 プロパティを CausesValidationfalse設定します。

プロパティを CommandField に設定することで、データ バインド コントロール内のフィールドをVisiblefalse非表示にすることができます。

CommandFieldフィールドを使用すると、ヘッダーセクションとフッターセクションをカスタマイズできます。 ヘッダーセクションまたはフッターセクションにキャプションを表示するには、 または FooterText プロパティをそれぞれ設定HeaderTextします。 ヘッダー セクションにテキストを表示する代わりに、 プロパティを設定して画像を HeaderImageUrl 表示できます。 オブジェクトのヘッダー セクションを CommandField 非表示にするには、 プロパティを ShowHeaderfalse設定します。

注意

一部のデータ バインド コントロール (コントロールなど) では、コントロールの GridView ヘッダー セクション全体のみを表示または非表示にすることができます。 これらのデータ バインド コントロールは、個々のボタン フィールドの ShowHeader プロパティをサポートしていません。 データ バインド コントロールのヘッダー セクション全体を表示または非表示にするには (使用可能な場合)、コントロールの ShowHeader プロパティを使用します。

また、フィールドのさまざまな部分のスタイル プロパティを CommandField 設定して、オブジェクトの外観 (フォントの色、背景色など) をカスタマイズすることもできます。 次の表に、さまざまなスタイル プロパティの一覧を示します。

Style プロパティ [説明]
ControlStyle オブジェクトの子 Web サーバー コントロールの CommandField スタイル設定。
FooterStyle オブジェクトのフッター セクションの CommandField スタイル設定。
HeaderStyle オブジェクトのヘッダー セクションの CommandField スタイル設定。
ItemStyle オブジェクト内 CommandField のデータ項目のスタイル設定。

コンストラクター

CommandField()

CommandField クラスの新しいインスタンスを初期化します。

プロパティ

AccessibleHeaderText

一部のコントロールの AbbreviatedText プロパティ値として表示されるテキストを取得または設定します。

(継承元 DataControlField)
ButtonType

ボタン フィールドに表示するボタンの種類を取得または設定します。

(継承元 ButtonFieldBase)
CancelImageUrl

CommandField フィールドの Cancel ボタンに表示するイメージの URL を取得または設定します。

CancelText

CommandField フィールドに表示される Cancel ボタンのキャプションを取得または設定します。

CausesValidation

ユーザーが CommandField フィールドのボタンをクリックしたときに検証が実行されるかどうかを示す値を取得または設定します。

Control

DataControlField オブジェクトが関連付けられているデータ コントロールの参照を取得します。

(継承元 DataControlField)
ControlStyle

DataControlField オブジェクトに格納されているすべての Web サーバー コントロールのスタイルを取得します。

(継承元 DataControlField)
DeleteImageUrl

CommandField フィールドの Delete ボタンに表示するイメージの URL を取得または設定します。

DeleteText

CommandField フィールドの Delete ボタンのキャプションを取得または設定します。

DesignMode

デザイン時環境で、現在データ コントロール フィールドが表示されているかどうかを示す値を取得します。

(継承元 DataControlField)
EditImageUrl

CommandField フィールドの Edit ボタンに表示するイメージの URL を取得または設定します。

EditText

CommandField フィールドの Edit ボタンのキャプションを取得または設定します。

FooterStyle

データ コントロール フィールドのフッターのスタイルを取得または設定します。

(継承元 DataControlField)
FooterText

データ コントロール フィールドのフッター項目に表示されるテキストを取得または設定します。

(継承元 DataControlField)
HeaderImageUrl

データ コントロール フィールドのヘッダー項目に表示されるイメージの URL を取得または設定します。

(継承元 DataControlField)
HeaderStyle

データ コントロール フィールドのヘッダーのスタイルを取得または設定します。

(継承元 DataControlField)
HeaderText

データ コントロール フィールドのヘッダー項目に表示されるテキストを取得または設定します。

(継承元 DataControlField)
InsertImageUrl

CommandField フィールドの Insert ボタンに表示するイメージの URL を取得または設定します。

InsertText

CommandField フィールドの Insert ボタンのキャプションを取得または設定します。

InsertVisible

DataControlField オブジェクトの親データ バインド コントロールが挿入モードの場合に、このオブジェクトが表示されるかどうかを示す値を取得します。

(継承元 DataControlField)
IsTrackingViewState

DataControlField オブジェクトがビューステートへの変更を保存しているかどうかを示す値を取得します。

(継承元 DataControlField)
ItemStyle

データ コントロール フィールドで表示されるテキスト ベースの内容のスタイルを取得します。

(継承元 DataControlField)
NewImageUrl

CommandField フィールドの New ボタンに表示するイメージの URL を取得または設定します。

NewText

CommandField フィールドの New ボタンのキャプションを取得または設定します。

SelectImageUrl

CommandField フィールドの Select ボタンに表示するイメージの URL を取得または設定します。

SelectText

CommandField フィールドの Select ボタンのキャプションを取得または設定します。

ShowCancelButton

CommandField フィールドに Cancel ボタンが表示されるかどうかを示す値を取得または設定します。

ShowDeleteButton

CommandField フィールドに Delete ボタンが表示されるかどうかを示す値を取得または設定します。

ShowEditButton

CommandField フィールドに Edit ボタンが表示されるかどうかを示す値を取得または設定します。

ShowHeader

ButtonFieldBase オブジェクトにヘッダー セクションを表示するかどうかを示す値を取得または設定します。

(継承元 ButtonFieldBase)
ShowInsertButton

CommandField フィールドに New ボタンが表示されるかどうかを示す値を取得または設定します。

ShowSelectButton

CommandField フィールドに Select ボタンが表示されるかどうかを示す値を取得または設定します。

SortExpression

データ ソース コントロールでデータを並べ替えるために使用される並べ替え式を、取得または設定します。

(継承元 DataControlField)
UpdateImageUrl

CommandField フィールドの Update ボタンに表示するイメージの URL を取得または設定します。

UpdateText

CommandField フィールドの Update ボタンのキャプションを取得または設定します。

ValidateRequestMode

コントロールでクライアントの入力を検証するかどうかを指定する値を取得または設定します。

(継承元 DataControlField)
ValidationGroup

ButtonFieldBase オブジェクトのボタンがクリックされたときに検証する検証コントロールのグループの名前を取得または設定します。

(継承元 ButtonFieldBase)
ViewState

同一のページに対する複数の要求にわたって、DataControlField オブジェクトのビューステートを保存し、復元できるようにする状態情報のディクショナリを取得します。

(継承元 DataControlField)
Visible

データ コントロール フィールドを表示するかどうかを示す値を取得または設定します。

(継承元 DataControlField)

メソッド

CloneField()

現在の DataControlField 派生オブジェクトのコピーを作成します。

(継承元 DataControlField)
CopyProperties(DataControlField)

CommandField オブジェクトの現在のプロパティを、指定された DataControlField オブジェクトにコピーします。

CreateField()

空の CommandField オブジェクトを作成します。

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。

(継承元 Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

現在のテーブル セルからデータ コントロール フィールドの値を抽出し、指定した IDictionary コレクションにその値を追加します。

(継承元 DataControlField)
GetHashCode()

既定のハッシュ関数として機能します。

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
Initialize(Boolean, Control)

データ コントロール フィールドのインスタンスの基本的な初期化を実行します。

(継承元 DataControlField)
InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

指定された DataControlFieldCell オブジェクトを、指定された行の状態に初期化します。

LoadViewState(Object)

データ ソース ビューの、以前保存したビューステートを復元します。

(継承元 DataControlField)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
OnFieldChanged()

FieldChanged イベントを発生させます。

(継承元 DataControlField)
SaveViewState()

ページがサーバーにポストバックされた時間以降に発生した、DataControlField ビューステートへの変更を保存します。

(継承元 DataControlField)
ToString()

この DataControlField オブジェクトを表す文字列を返します。

(継承元 DataControlField)
TrackViewState()

DataControlField オブジェクトがそのビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState プロパティに格納して、同じページに対する複数の要求にわたって永続化できます。

(継承元 DataControlField)
ValidateSupportsCallback()

CommandField オブジェクトに格納されているコントロールがコールバックをサポートしているかどうかを確認します。

明示的なインターフェイスの実装

IDataSourceViewSchemaAccessor.DataSourceViewSchema

DataControlField オブジェクトに関連付けられているスキーマを取得または設定します。

(継承元 DataControlField)
IStateManager.IsTrackingViewState

DataControlField オブジェクトがビューステートへの変更を保存しているかどうかを示す値を取得します。

(継承元 DataControlField)
IStateManager.LoadViewState(Object)

データ コントロール フィールドの、以前保存したビューステートを復元します。

(継承元 DataControlField)
IStateManager.SaveViewState()

ページがサーバーにポストバックされた時間以降に発生した、DataControlField ビューステートへの変更を保存します。

(継承元 DataControlField)
IStateManager.TrackViewState()

DataControlField オブジェクトがそのビューステートの変更を追跡するようにします。それにより、変更をコントロールの ViewState プロパティに格納して、同じページに対する複数の要求にわたって永続化できます。

(継承元 DataControlField)

適用対象

こちらもご覧ください