GridView.AutoGenerateDeleteButton プロパティ

定義

データ行ごとに Delete ボタンを持つ CommandField フィールド列を自動的に GridView コントロールに追加するかどうかを示す値を取得または設定します。

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

プロパティ値

Boolean

データ行ごとに Delete ボタンを持つ CommandField フィールド列を自動的に追加する場合は true。それ以外の場合は false。 既定値は、false です。

次の例では、プロパティを使用してコントロールの AutoGenerateDeleteButton 自動削除機能を有効にする方法を GridView 示します。

<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>
<asp:LinqDataSource ID="LinqDataSource1" runat="server" 
    ContextTypeName="AdventureWorksLTDataClassesDataContext"
    EnableDelete="True" EnableInsert="True" EnableUpdate="True" 
    TableName="SalesOrderDetails">
</asp:LinqDataSource>

<asp:GridView ID="GridView1" runat="server" 
    AutoGenerateColumns="False" 
    DataKeyNames="SalesOrderID,SalesOrderDetailID"
    DataSourceID="LinqDataSource1">
    <Columns>
        <asp:CommandField ShowDeleteButton="True" 
            ShowEditButton="True" />
        <asp:BoundField DataField="SalesOrderID" 
            HeaderText="SalesOrderID" ReadOnly="True"
            SortExpression="SalesOrderID" />
        <asp:BoundField DataField="SalesOrderDetailID" 
            HeaderText="SalesOrderDetailID" InsertVisible="False"
            ReadOnly="True" SortExpression="SalesOrderDetailID" />
        <asp:BoundField DataField="OrderQty" 
            HeaderText="OrderQty" SortExpression="OrderQty" />
        <asp:BoundField DataField="ProductID" 
            HeaderText="ProductID" SortExpression="ProductID" />
        <asp:BoundField DataField="UnitPrice" 
            HeaderText="UnitPrice" SortExpression="UnitPrice" />
        <asp:BoundField DataField="ModifiedDate" 
            HeaderText="ModifiedDate" SortExpression="ModifiedDate" />
    </Columns>
</asp:GridView>

注釈

削除をサポートするデータ ソース コントロールがコントロールに GridView バインドされている場合、 GridView コントロールはデータ ソース コントロールの機能を利用し、自動削除機能を提供できます。

注意

データ ソース コントロールでデータを削除するには、データを削除するように構成する必要があります。 レコードを削除するようにデータ ソース コントロールを構成するには、特定のデータ ソース 管理のドキュメントを参照してください。

プロパティを AutoGenerateDeleteButton 設定 trueすると、データ行ごとに Delete ボタンを持つ列 (オブジェクトによって CommandField 表されます) がコントロールに自動的に GridView 追加されます。 行の [削除] ボタンをクリックすると、そのレコードがデータ ソースから完全に削除されます。

注意

自動削除機能を DataKeyNames 機能させるには、データ ソースのキー フィールドまたはフィールドを識別するようにプロパティを設定する必要もあります。

コントロールには GridView 、行が削除されたときにカスタム アクションを実行するために使用できるイベントがいくつか用意されています。 次の表に、使用可能なイベントを示します。

Event 説明
RowDeleted 行の [削除] ボタンがクリックされたが、コントロールがデータ ソースからレコードを削除した後 GridView に発生します。 このイベントは、多くの場合、削除操作の結果を確認するために使用されます。
RowDeleting 行の [削除] ボタンがクリックされたときに、コントロールがデータ ソースからレコードを削除する前 GridView に発生します。 このイベントは、多くの場合、削除操作を取り消すために使用されます。

適用対象

こちらもご覧ください