Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

DataView-Klasse

 

Veröffentlicht: Oktober 2016

Stellt eine an Daten bindbare, benutzerdefinierte Ansicht einer DataTable zum Sortieren, Filtern, Durchsuchen, Bearbeiten und Navigieren dar. DataView speichert keine Daten, sondern stellt stattdessen eine verbundene Ansicht der entsprechenden DataTable dar. Änderungen an den Daten von DataView wirken sich auf DataTable aus. Änderungen an den Daten von DataTable wirken sich auf alle DataViews aus, die ihr zugeordnet sind.

Namespace:   System.Data
Assembly:  System.Data (in System.Data.dll)


public class DataView : MarshalByValueComponent, IBindingListView, 
	IBindingList, IList, ICollection, IEnumerable, ITypedList, ISupportInitializeNotification, 
	ISupportInitialize

NameBeschreibung
System_CAPS_pubmethodDataView()

Initialisiert eine neue Instanz der DataView-Klasse.

System_CAPS_pubmethodDataView(DataTable)

Initialisiert eine neue Instanz der DataView-Klasse mit der angegebenen DataTable.

System_CAPS_pubmethodDataView(DataTable, String, String, DataViewRowState)

Initialisiert eine neue Instanz der DataView-Klasse mit den angegebenen DataTable, RowFilter, Sort und DataViewRowState.

NameBeschreibung
System_CAPS_pubpropertyAllowDelete

Ruft einen Wert ab, der angibt, ob Löschungen zulässig sind, oder legt diesen fest.

System_CAPS_pubpropertyAllowEdit

Ruft einen Wert ab, der angibt, ob Bearbeitungen zulässig sind, oder legt diesen fest.

System_CAPS_pubpropertyAllowNew

Ruft einen Wert ab, der angibt, ob die neuen Zeilen mithilfe der AddNew-Methode hinzugefügt werden können, oder legt diesen fest.

System_CAPS_pubpropertyApplyDefaultSort

Ruft einen Wert ab, der angibt, ob die Standardsortierung verwendet werden soll, oder legt diesen Wert fest. Die Standardsortierung erfolgt nach allen Primärschlüsseln (in aufsteigender Reihenfolge), wie durch PrimaryKey angegeben.

System_CAPS_pubpropertyContainer

Ruft den Container für die Komponente.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubpropertyCount

Ruft die Anzahl der Datensätze in DataView ab, nachdem RowFilter und RowStateFilter angewendet wurden.

System_CAPS_pubpropertyDataViewManager

Ruft den DataViewManager ab, der dieser Ansicht zugeordnet ist.

System_CAPS_pubpropertyDesignMode

Ruft einen Wert, der angibt, ob die Komponente derzeit im Entwurfsmodus befindet.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_protpropertyEvents

Ruft die Liste der Ereignishandler, die dieser Komponente zugeordnet sind.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubpropertyIsInitialized

Ruft einen Wert ab, der angibt, ob die Komponente initialisiert wurde.

System_CAPS_protpropertyIsOpen

Ruft einen Wert ab, der angibt, ob die Datenquelle aktuell geöffnet ist und Ansichten der Daten in der DataTable projiziert.

System_CAPS_pubpropertyItem[Int32]

Ruft eine Datenzeile aus einer angegebenen Tabelle ab.

System_CAPS_pubpropertyRowFilter

Ruft den Ausdruck ab, mit dem die in DataView anzuzeigenden Zeilen gefiltert werden, oder legt diesen fest.

System_CAPS_pubpropertyRowStateFilter

Dient zum Abrufen oder Festlegen des Zeilenstatusfilters, der in der DataView verwendet wird.

System_CAPS_pubpropertySite

Ruft ab oder legt die Site der Komponente fest.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubpropertySort

Ruft die Sortierspalte(n) und die Sortierreihenfolge für die DataView ab oder legt sie fest.

System_CAPS_pubpropertyTable

Ruft die Quell-DataTable ab oder legt sie fest.

NameBeschreibung
System_CAPS_pubmethodAddNew()

Fügt DataView eine neue Zeile hinzu.

System_CAPS_pubmethodBeginInit()

Startet die Initialisierung einer DataView, die in einem Formular oder von einer anderen Komponente verwendet wird. Die Initialisierung erfolgt zur Laufzeit.

System_CAPS_protmethodClose()

Schließt den DataView.

System_CAPS_protmethodColumnCollectionChanged(Object, CollectionChangeEventArgs)

Tritt auf, nachdem eine DataColumnCollection erfolgreich geändert wurde.

System_CAPS_pubmethodCopyTo(Array, Int32)

Kopiert die Elemente in ein Array. Nur für Web Forms-Schnittstellen.

System_CAPS_pubmethodDelete(Int32)

Löscht eine Zeile am angegebenen Index.

System_CAPS_pubmethodDispose()

Gibt alle vom MarshalByValueComponent verwendeten Ressourcen frei.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_protmethodDispose(Boolean)

Löscht (außer den Speicherressourcen) alle Ressourcen, die vom DataView-Objekt verwendet werden.(Überschreibt MarshalByValueComponent.Dispose(Boolean).)

System_CAPS_pubmethodEndInit()

Beendet die Initialisierung einer DataView, die in einem Formular oder von einer anderen Komponente verwendet wird. Die Initialisierung erfolgt zur Laufzeit.

System_CAPS_pubmethodEquals(DataView)

Stellt fest, ob die angegebenen DataView-Instanzen als gleich betrachtet werden.

System_CAPS_pubmethodEquals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.(Geerbt von „Object“.)

System_CAPS_protmethodFinalize()

Gibt einem Objekt Gelegenheit zu dem Versuch, Ressourcen freizugeben und andere Bereinigungen durchzuführen, bevor es von der Garbage Collection freigegeben wird.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubmethodFind(Object)

Sucht eine Zeile in der DataView anhand des angegebenen Sortierschlüsselwerts.

System_CAPS_pubmethodFind(Object[])

Sucht eine Zeile in der DataView anhand der angegebenen Sortierschlüsselwerte.

System_CAPS_pubmethodFindRows(Object)

Gibt ein Array von DataRowView-Objekten zurück, dessen Spalten dem angegebenen Sortierschlüsselwert entsprechen.

System_CAPS_pubmethodFindRows(Object[])

Gibt ein Array von DataRowView-Objekten zurück, dessen Spalten dem angegebenen Sortierschlüsselwert entsprechen.

System_CAPS_pubmethodGetEnumerator()

Ruft einen Enumerator für diese DataView ab.

System_CAPS_pubmethodGetHashCode()

Fungiert als die Standardhashfunktion.(Geerbt von „Object“.)

System_CAPS_pubmethodGetService(Type)

Ruft die Implementierung der IServiceProvider.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubmethodGetType()

Ruft den Type der aktuellen Instanz ab.(Geerbt von „Object“.)

System_CAPS_protmethodIndexListChanged(Object, ListChangedEventArgs)

Tritt auf, nachdem eine DataView erfolgreich geändert wurde.

System_CAPS_protmethodMemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.(Geerbt von „Object“.)

System_CAPS_protmethodOnListChanged(ListChangedEventArgs)

Löst das ListChanged-Ereignis aus.

System_CAPS_protmethodOpen()

Öffnet eine DataView.

System_CAPS_protmethodReset()

Nur für die interne Verwendung vorgesehen.

System_CAPS_pubmethodToString()

Gibt eine String mit dem Namen der Component, sofern vorhanden. Diese Methode darf nicht überschrieben werden.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubmethodToTable()

Erstellt eine neue DataTable basierend auf den Zeilen in einer vorhandenen DataView und gibt diese zurück.

System_CAPS_pubmethodToTable(Boolean, String[])

Erstellt eine neue DataTable basierend auf den Zeilen in einer vorhandenen DataView und gibt diese zurück.

System_CAPS_pubmethodToTable(String)

Erstellt eine neue DataTable basierend auf den Zeilen in einer vorhandenen DataView und gibt diese zurück.

System_CAPS_pubmethodToTable(String, Boolean, String[])

Erstellt eine neue DataTable basierend auf den Zeilen in einer vorhandenen DataView und gibt diese zurück.

System_CAPS_protmethodUpdateIndex()

Nur für die interne Verwendung vorgesehen.

System_CAPS_protmethodUpdateIndex(Boolean)

Nur für die interne Verwendung vorgesehen.

NameBeschreibung
System_CAPS_pubeventDisposed

Fügt einen Ereignishandler zum Abhören der Disposed -Ereignis für die Komponente.(Geerbt von „MarshalByValueComponent“.)

System_CAPS_pubeventInitialized

Tritt auf, wenn die Initialisierung von DataView abgeschlossen ist.

System_CAPS_pubeventListChanged

Tritt auf, wenn die von DataView verwaltete Liste geändert wird.

NameBeschreibung
System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Add(Object)

Eine Beschreibung dieses Elements finden Sie unter IList.Add.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Clear()

Eine Beschreibung dieses Elements finden Sie unter IList.Clear.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Contains(Object)

Eine Beschreibung dieses Elements finden Sie unter IList.Contains.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.IndexOf(Object)

Eine Beschreibung dieses Elements finden Sie unter IList.IndexOf.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Insert(Int32, Object)

Eine Beschreibung dieses Elements finden Sie unter IList.Insert.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.Remove(Object)

Eine Beschreibung dieses Elements finden Sie unter IList.Remove.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIList.RemoveAt(Int32)

Eine Beschreibung dieses Elements finden Sie unter IList.RemoveAt.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.AddIndex(PropertyDescriptor)

Eine Beschreibung dieses Elements finden Sie unter IBindingList.AddIndex.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.AddNew()

Eine Beschreibung dieses Elements finden Sie unter IBindingList.AddNew.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.ApplySort(PropertyDescriptor, ListSortDirection)

Eine Beschreibung dieses Elements finden Sie unter IBindingList.ApplySort.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.Find(PropertyDescriptor, Object)

Eine Beschreibung dieses Elements finden Sie unter IBindingList.Find.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.RemoveIndex(PropertyDescriptor)

Eine Beschreibung dieses Elements finden Sie unter IBindingList.RemoveIndex.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingList.RemoveSort()

Eine Beschreibung dieses Elements finden Sie unter IBindingList.RemoveSort.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingListView.ApplySort(ListSortDescriptionCollection)

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.ApplySort.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIBindingListView.RemoveFilter()

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.RemoveFilter.

System_CAPS_pubinterfaceSystem_CAPS_privmethodITypedList.GetItemProperties(PropertyDescriptor[])

Eine Beschreibung dieses Elements finden Sie unter ITypedList.GetItemProperties.

System_CAPS_pubinterfaceSystem_CAPS_privmethodITypedList.GetListName(PropertyDescriptor[])

Eine Beschreibung dieses Elements finden Sie unter ITypedList.GetListName.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.IsSynchronized

Eine Beschreibung dieses Elements finden Sie unter ICollection.IsSynchronized.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.SyncRoot

Eine Beschreibung dieses Elements finden Sie unter ICollection.SyncRoot.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.IsFixedSize

Eine Beschreibung dieses Elements finden Sie unter IList.IsFixedSize.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.IsReadOnly

Eine Beschreibung dieses Elements finden Sie unter IList.IsReadOnly.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIList.Item[Int32]

Eine Beschreibung dieses Elements finden Sie unter IList.Item.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.AllowEdit

Eine Beschreibung dieses Elements finden Sie unter IBindingList.AllowEdit.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.AllowNew

Eine Beschreibung dieses Elements finden Sie unter IBindingList.AllowNew.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.AllowRemove

Eine Beschreibung dieses Elements finden Sie unter IBindingList.AllowRemove.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.IsSorted

Eine Beschreibung dieses Elements finden Sie unter IBindingList.IsSorted.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.SortDirection

Eine Beschreibung dieses Elements finden Sie unter IBindingList.SortDirection.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.SortProperty

Eine Beschreibung dieses Elements finden Sie unter IBindingList.SortProperty.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.SupportsChangeNotification

Eine Beschreibung dieses Elements finden Sie unter IBindingList.SupportsChangeNotification.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.SupportsSearching

Eine Beschreibung dieses Elements finden Sie unter IBindingList.SupportsSearching.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingList.SupportsSorting

Eine Beschreibung dieses Elements finden Sie unter IBindingList.SupportsSorting.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingListView.Filter

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.Filter.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingListView.SortDescriptions

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.SortDescriptions.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingListView.SupportsAdvancedSorting

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.SupportsAdvancedSorting.

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIBindingListView.SupportsFiltering

Eine Beschreibung dieses Elements finden Sie unter IBindingListView.SupportsFiltering.

NameBeschreibung
System_CAPS_pubmethodAsParallel()

Überladen. Ermöglicht die Parallelisierung einer Abfrage.(Definiert durch ParallelEnumerable.)

System_CAPS_pubmethodAsQueryable()

Überladen. Konvertiert ein IEnumerable zu einer IQueryable.(Definiert durch Queryable.)

System_CAPS_pubmethodCast<TResult>()

Wandelt die Elemente einer IEnumerable in den angegebenen Typ.(Definiert durch Enumerable.)

System_CAPS_pubmethodOfType<TResult>()

Filtert die Elemente einer IEnumerable auf Grundlage eines angegebenen Typs.(Definiert durch Enumerable.)

A major function of the T:System.Data.DataView is to allow for data binding on both Windows Forms and Web Forms.

Additionally, a T:System.Data.DataView can be customized to present a subset of data from the T:System.Data.DataTable. This capability lets you have two controls bound to the same T:System.Data.DataTable, but that show different versions of the data. For example, one control might be bound to a T:System.Data.DataView that shows all the rows in the table, and a second might be configured to display only the rows that have been deleted from the T:System.Data.DataTable. The T:System.Data.DataTable also has a P:System.Data.DataTable.DefaultView property. This returns the default T:System.Data.DataView for the table. For example, if you want to create a custom view on the table, set the P:System.Data.DataView.RowFilter on the T:System.Data.DataView returned by the P:System.Data.DataTable.DefaultView.

To create a filtered and sorted view of data, set the P:System.Data.DataView.RowFilter and P:System.Data.DataView.Sort properties. Then, use the P:System.Data.DataView.Item(System.Int32) property to return a single T:System.Data.DataRowView.

You can also add and delete from the set of rows using the M:System.Data.DataView.AddNew and M:System.Data.DataView.Delete(System.Int32) methods. When you use those methods, the P:System.Data.DataView.RowStateFilter property can set to specify that only deleted rows or new rows be displayed by the T:System.Data.DataView.

System_CAPS_noteHinweis

If you do not explicitly specify sort criteria for DataView, the DataRowView objects in DataView are sorted based on the index of DataView's corresponding DataRow in the DataTable.RowsDataRowCollection.

LINQ to DataSet allows developers to create complex, powerful queries over a DataSet by using LINQ. A LINQ to DataSet query returns an enumeration of DataRow objects, however, which is not easily used in a binding scenario. DataView can be created from a LINQ to DataSet query and takes on the filtering and sorting characteristics of that query. LINQ to DataSet extends the functionality of the DataView by providing LINQ expression-based filtering and sorting, which allows for much more complex and powerful filtering and sorting operations than string-based filtering and sorting. See Datenbindung und LINQ to DataSet for more information.

The following example creates a single T:System.Data.DataTable with one column and five rows. Two T:System.Data.DataView objects are created and the P:System.Data.DataView.RowStateFilter is set on each to show different views of the table data. The values are then printed.

using System;
using System.Xml;
using System.Data;
using System.Data.Common;
using System.Windows.Forms;

public class Form1: Form
{
    protected DataSet DataSet1;
    protected DataGrid dataGrid1;



    private void DemonstrateDataView()
    {
        // Create one DataTable with one column.
        DataTable table = new DataTable("table");
        DataColumn colItem = new DataColumn("item",
            Type.GetType("System.String"));
        table.Columns.Add(colItem);

        // Add five items.
        DataRow NewRow;
        for(int i = 0; i <5; i++)
        {
            NewRow = table.NewRow();
            NewRow["item"] = "Item " + i;
            table.Rows.Add(NewRow);
        }
        // Change the values in the table.
        table.AcceptChanges();
        table.Rows[0]["item"]="cat";
        table.Rows[1]["item"] = "dog";

        // Create two DataView objects with the same table.
        DataView firstView = new DataView(table);
        DataView secondView = new DataView(table);

        // Print current table values.
        PrintTableOrView(table,"Current Values in Table");

        // Set first DataView to show only modified 
        // versions of original rows.
        firstView.RowStateFilter=DataViewRowState.ModifiedOriginal;

        // Print values.   
        PrintTableOrView(firstView,"First DataView: ModifiedOriginal");

        // Add one New row to the second view.
        DataRowView rowView;
        rowView=secondView.AddNew();
        rowView["item"] = "fish";

        // Set second DataView to show modified versions of 
        // current rows, or New rows.
        secondView.RowStateFilter=DataViewRowState.ModifiedCurrent 
            | DataViewRowState.Added;
        // Print modified and Added rows.
        PrintTableOrView(secondView, 
            "Second DataView: ModifiedCurrent | Added");
    }

    private void PrintTableOrView(DataTable table, string label)
    {
        // This function prints values in the table or DataView.
        Console.WriteLine("\n" + label);
        for(int i = 0; i<table.Rows.Count;i++)
        {
            Console.WriteLine("\table" + table.Rows[i]["item"]);
        }
        Console.WriteLine();
    }

    private void PrintTableOrView(DataView view, string label)
    {

        // This overload prints values in the table or DataView.
        Console.WriteLine("\n" + label);
        for(int i = 0; i<view.Count;i++)
        {
            Console.WriteLine("\table" + view[i]["item"]);
        }
        Console.WriteLine();
    }
}

The following example creates a T:System.Data.DataView of online orders ordered by total due from a linq_dataset query:

DataTable orders = dataSet.Tables["SalesOrderHeader"];

EnumerableRowCollection<DataRow> query =
    from order in orders.AsEnumerable()
    where order.Field<bool>("OnlineOrderFlag") == true
    orderby order.Field<decimal>("TotalDue")
    select order;

DataView view = query.AsDataView();

bindingSource1.DataSource = view;

.NET Framework
Verfügbar seit 1.1

This type is safe for multithreaded read operations. You must synchronize any write operations.

Zurück zum Anfang
Anzeigen: