DataTableCollection.Remove Method   
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Removes a specified DataTable object from the collection.
Overloads
| Remove(String, String) | Removes the DataTable object with the specified name from the collection. | 
| Remove(DataTable) | Removes the specified DataTable object from the collection. | 
| Remove(String) | Removes the DataTable object with the specified name from the collection. | 
Remove(String, String)
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
Removes the DataTable object with the specified name from the collection.
public:
 void Remove(System::String ^ name, System::String ^ tableNamespace);public void Remove(string name, string tableNamespace);member this.Remove : string * string -> unitPublic Sub Remove (name As String, tableNamespace As String)Parameters
Exceptions
The collection does not have a table with the specified name.
Examples
The following example uses the Contains and CanRemove methods to test whether a named table exists and can be removed. If so, the Remove method is called to remove the table.
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
Remarks
The CollectionChanged event occurs when a table is successfully removed.
To determine whether a given table exists and can be removed before invoking Remove, use the Contains and the CanRemove methods.
See also
Applies to
Remove(DataTable)
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
Removes the specified DataTable object from the collection.
public:
 void Remove(System::Data::DataTable ^ table);public void Remove(System.Data.DataTable table);member this.Remove : System.Data.DataTable -> unitPublic Sub Remove (table As DataTable)Parameters
- table
- DataTable
The DataTable to remove.
Exceptions
The value specified for the table is null.
The table does not belong to this collection.
-or-
The table is part of a relationship.
Examples
The following example uses the CanRemove method to test whether each table can be removed from a DataSet. If so, the Remove method is called to remove the table.
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
Remarks
The CollectionChanged event occurs when a table is successfully removed.
To determine whether a given table exists and can be removed before invoking Remove, use the Contains and the CanRemove methods.
See also
Applies to
Remove(String)
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
- Source:
- DataTableCollection.cs
Removes the DataTable object with the specified name from the collection.
public:
 void Remove(System::String ^ name);public void Remove(string name);member this.Remove : string -> unitPublic Sub Remove (name As String)Parameters
Exceptions
The collection does not have a table with the specified name.
Examples
The following example uses the Contains and CanRemove methods to test whether a named table exists and can be removed. If so, the Remove method is called to remove the table.
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
Remarks
The CollectionChanged event occurs when a table is successfully removed.
To determine whether a given table exists and can be removed before invoking Remove, use the Contains and the CanRemove methods.