DataTableCollection.Remove メソッド

定義

指定した DataTable オブジェクトをコレクションから削除します。

オーバーロード

名前 説明
Remove(String, String)

指定した名前の DataTable オブジェクトをコレクションから削除します。

Remove(DataTable)

指定した DataTable オブジェクトをコレクションから削除します。

Remove(String)

指定した名前の DataTable オブジェクトをコレクションから削除します。

Remove(String, String)

ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs

指定した名前の DataTable オブジェクトをコレクションから削除します。

public:
 void Remove(System::String ^ name, System::String ^ tableNamespace);
public void Remove(string name, string tableNamespace);
member this.Remove : string * string -> unit
Public Sub Remove (name As String, tableNamespace As String)

パラメーター

name
String

削除する DataTable オブジェクトの名前。

tableNamespace
String

検索する DataTable 名前空間の名前。

例外

コレクションに、指定した名前のテーブルがありません。

次の例では、 Contains メソッドと CanRemove メソッドを使用して、名前付きテーブルが存在し、削除できるかどうかをテストします。 その場合は、テーブルを削除するために Remove メソッドが呼び出されます。

private void RemoveTables()
{
    // Set the name of the table to test for and remove.
    string name = "Suppliers";

    // Presuming a DataGrid is displaying more than one table, get its DataSet.
    DataSet thisDataSet = (DataSet)DataGrid1.DataSource;
    DataTableCollection tablesCol = thisDataSet.Tables;
    if (tablesCol.Contains(name) && tablesCol.CanRemove(tablesCol[name]))
        tablesCol.Remove(name);
}
Private Sub RemoveTables()
   ' Set the name of the table to test for and remove.
   Dim name As String = "Suppliers"

   ' Presuming a DataGrid is displaying more than one table, get its DataSet.
   Dim thisDataSet As DataSet = CType(DataGrid1.DataSource, DataSet)
   Dim tablesCol As DataTableCollection = thisDataSet.Tables
   If tablesCol.Contains(name) _
   And tablesCol.CanRemove(tablesCol(name)) Then 
      tablesCol.Remove(name)
   End If
End Sub

注釈

CollectionChanged イベントは、テーブルが正常に削除されたときに発生します。

特定のテーブルが存在し、 Removeを呼び出す前に削除できるかどうかを判断するには、 Contains メソッドと CanRemove メソッドを使用します。

こちらもご覧ください

適用対象

Remove(DataTable)

ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs

指定した DataTable オブジェクトをコレクションから削除します。

public:
 void Remove(System::Data::DataTable ^ table);
public void Remove(System.Data.DataTable table);
member this.Remove : System.Data.DataTable -> unit
Public Sub Remove (table As DataTable)

パラメーター

table
DataTable

削除する DataTable

例外

テーブルに指定された値は null

テーブルはこのコレクションに属していません。

-又は-

テーブルはリレーションシップの一部です。

次の例では、 CanRemove メソッドを使用して、各テーブルを DataSetから削除できるかどうかをテストします。 その場合は、テーブルを削除するために Remove メソッドが呼び出されます。

public static void DataTableCollectionCanRemove()
{
    // create a DataSet with two tables
    DataSet dataSet = new DataSet();

    // create Customer table
    DataTable customersTable = new DataTable("Customers");
    customersTable.Columns.Add("customerId",
        typeof(int) ).AutoIncrement = true;
    customersTable.Columns.Add("name",
        typeof(string));
    customersTable.PrimaryKey = new DataColumn[]
        { customersTable.Columns["customerId"] };

    // create Orders table
    DataTable ordersTable = new DataTable("Orders");
    ordersTable.Columns.Add("orderId",
        typeof(int) ).AutoIncrement = true;
    ordersTable.Columns.Add("customerId",
        typeof(int) );
    ordersTable.Columns.Add("amount",
        typeof(double));
    ordersTable.PrimaryKey = new DataColumn[]
        { ordersTable.Columns["orderId"] };

    dataSet.Tables.AddRange(new DataTable[]
        {customersTable, ordersTable });

    // remove all tables
    // check if table can be removed and then
    // remove it, cannot use a foreach when
    // removing items from a collection
    while(dataSet.Tables.Count > 0)
    {
        DataTable table = dataSet.Tables[0];
        if(dataSet.Tables.CanRemove(table))
        {
            dataSet.Tables.Remove(table);
        }
    }

    Console.WriteLine("dataSet has {0} tables",
        dataSet.Tables.Count);
}
Public Sub Main
DataTableCollectionCanRemove
End Sub

Public Sub DataTableCollectionCanRemove()
    ' create a DataSet with two tables
    Dim dataSet As New DataSet()

    ' create Customer table
    Dim customersTable As New DataTable("Customers")
    customersTable.Columns.Add("customerId", _
        System.Type.GetType("System.Integer")).AutoIncrement = True
    customersTable.Columns.Add("name", _
        System.Type.GetType("System.String"))
    customersTable.PrimaryKey = New DataColumn() _
        {customersTable.Columns("customerId")}

    ' create Orders table
    Dim ordersTable As New DataTable("Orders")
    ordersTable.Columns.Add("orderId", _
        System.Type.GetType("System.Integer")).AutoIncrement = True
    ordersTable.Columns.Add("customerId", _
        System.Type.GetType("System.Integer"))
    ordersTable.Columns.Add("amount", _
        System.Type.GetType("System.Double"))
    ordersTable.PrimaryKey = New DataColumn() _
        {ordersTable.Columns("orderId")}

    dataSet.Tables.AddRange(New DataTable() {customersTable, ordersTable})

    ' remove all tables
    ' check if table can be removed and then
    ' remove it, cannot use a foreach when
    ' removing items from a collection
    Do While (dataSet.Tables.Count > 0)
        Dim table As DataTable = dataSet.Tables(0)
        If (dataSet.Tables.CanRemove(table)) Then
            dataSet.Tables.Remove(table)
        End If
    Loop

Console.WriteLine("dataSet has {0} tables", dataSet.Tables.Count)
End Sub

注釈

CollectionChanged イベントは、テーブルが正常に削除されたときに発生します。

特定のテーブルが存在し、 Removeを呼び出す前に削除できるかどうかを判断するには、 Contains メソッドと CanRemove メソッドを使用します。

こちらもご覧ください

適用対象

Remove(String)

ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs
ソース:
DataTableCollection.cs

指定した名前の DataTable オブジェクトをコレクションから削除します。

public:
 void Remove(System::String ^ name);
public void Remove(string name);
member this.Remove : string -> unit
Public Sub Remove (name As String)

パラメーター

name
String

削除する DataTable オブジェクトの名前。

例外

コレクションに、指定した名前のテーブルがありません。

次の例では、 Contains メソッドと CanRemove メソッドを使用して、名前付きテーブルが存在し、削除できるかどうかをテストします。 その場合は、テーブルを削除するために Remove メソッドが呼び出されます。

private void RemoveTables()
{
    // Set the name of the table to test for and remove.
    string name = "Suppliers";

    // Presuming a DataGrid is displaying more than one table, get its DataSet.
    DataSet thisDataSet = (DataSet)DataGrid1.DataSource;
    DataTableCollection tablesCol = thisDataSet.Tables;
    if (tablesCol.Contains(name) && tablesCol.CanRemove(tablesCol[name]))
        tablesCol.Remove(name);
}
Private Sub RemoveTables()
   ' Set the name of the table to test for and remove.
   Dim name As String = "Suppliers"

   ' Presuming a DataGrid is displaying more than one table, get its DataSet.
   Dim thisDataSet As DataSet = CType(DataGrid1.DataSource, DataSet)
   Dim tablesCol As DataTableCollection = thisDataSet.Tables
   If tablesCol.Contains(name) _
   And tablesCol.CanRemove(tablesCol(name)) Then 
      tablesCol.Remove(name)
   End If
End Sub

注釈

CollectionChanged イベントは、テーブルが正常に削除されたときに発生します。

特定のテーブルが存在し、 Removeを呼び出す前に削除できるかどうかを判断するには、 Contains メソッドと CanRemove メソッドを使用します。

こちらもご覧ください

適用対象