Creating and Using DataViews 

A DataView enables you to create different views of the data stored in a DataTable, a capability that is often used in data-binding applications. Using a DataView, you can expose the data in a table with different sort orders, and you can filter the data by row state or based on a filter expression.

A DataView provides a dynamic view of data in the underlying DataTable: the content, ordering, and membership reflect changes as they occur. This behavior differs from the Select method of the DataTable, which returns a DataRow array from a table based on a particular filter and/or sort order: this content reflects changes to the underlying table, but its membership and ordering remain static. The dynamic capabilities of the DataView make it ideal for data-binding applications.

A DataView provides you with a dynamic view of a single set of data, much like a database view, to which you can apply different sorting and filtering criteria. Unlike a database view, however, a DataView cannot be treated as a table and cannot provide a view of joined tables. You also cannot exclude columns that exist in the source table, nor can you append columns, such as computational columns, that do not exist in the source table.

You can use a DataViewManager to manage view settings for all the tables in a DataSet. The DataViewManager provides you with a convenient way to manage default view settings for each table. When binding a control to more than one table of a DataSet, binding to a DataViewManager is the ideal choice.

In This Section

  • Viewing Data Using a DataView
    Describes how to access the contents of a DataView, find a particular data row in a DataView, and create views of data from parent-child relationships.
  • Working with DataView Events
    Describes how to use the ListChanged event to receive notification when the contents or order of a DataView is being updated.
  • Creating and Using DataTables
    Describes the DataTable object and how you can use it to manage application data by itself or as part of a DataSet.
  • ADO.NET
    Describes the ADO.NET architecture and components, and how to use ADO.NET to access existing data sources and manage application data.