Sdílet prostřednictvím


DataTableCollection.Remove Metoda

Definice

Odebere zadaný DataTable objekt z kolekce.

Přetížení

Remove(String, String)

Odebere objekt se DataTable zadaným názvem z kolekce.

Remove(DataTable)

Odebere zadaný DataTable objekt z kolekce.

Remove(String)

Odebere objekt se DataTable zadaným názvem z kolekce.

Remove(String, String)

Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs

Odebere objekt se DataTable zadaným názvem z kolekce.

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)

Parametry

name
String

Název objektu, který DataTable má být odebrán.

tableNamespace
String

Název oboru názvů, ve DataTable které se má hledat.

Výjimky

Kolekce nemá tabulku se zadaným názvem.

Příklady

Následující příklad používá Contains metody a CanRemove k testování, zda pojmenovaná tabulka existuje a lze ji odebrat. Pokud ano, zavolá se Remove metoda k odebrání tabulky.

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

Poznámky

Událost CollectionChanged nastane, když je tabulka úspěšně odebrána.

Chcete-li zjistit, zda daná tabulka existuje a lze ji před vyvoláním Removeodebrat, použijte Contains metody a CanRemove .

Viz také

Platí pro

Remove(DataTable)

Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs

Odebere zadaný DataTable objekt z kolekce.

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)

Parametry

table
DataTable

Objekt, DataTable který se má odebrat.

Výjimky

Hodnota zadaná pro tabulku je null.

Tabulka nepatří do této kolekce.

-nebo-

Tabulka je součástí relace.

Příklady

Následující příklad používá metodu CanRemove k testování, zda lze každou tabulku odebrat z objektu DataSet. Pokud ano, zavolá se Remove metoda k odebrání tabulky.

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

Poznámky

Událost CollectionChanged nastane, když je tabulka úspěšně odebrána.

Chcete-li zjistit, zda daná tabulka existuje a lze ji před vyvoláním Removeodebrat, použijte Contains metody a CanRemove .

Viz také

Platí pro

Remove(String)

Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs
Zdroj:
DataTableCollection.cs

Odebere objekt se DataTable zadaným názvem z kolekce.

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

Parametry

name
String

Název objektu, který DataTable má být odebrán.

Výjimky

Kolekce nemá tabulku se zadaným názvem.

Příklady

Následující příklad používá Contains metody a CanRemove k testování, zda pojmenovaná tabulka existuje a lze ji odebrat. Pokud ano, zavolá se Remove metoda k odebrání tabulky.

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

Poznámky

Událost CollectionChanged nastane, když je tabulka úspěšně odebrána.

Chcete-li zjistit, zda daná tabulka existuje a lze ji před vyvoláním Removeodebrat, použijte Contains metody a CanRemove .

Viz také

Platí pro