DataViews and Data Binding—DataView and DataViewManager


Jump to: navigation, search
Visual C# Tutorials
Database Tutorials

DataViews and Data Binding

© 2003 O'Reilly Media, Inc.

The DataView and DataViewManager

Data binding depends on two classes in the System.Data namespace: DataView and DataViewManager. These classes provide an important layer of indirection between your data and its display format, allowing you to apply sorts and filter rows without modifying the underlying information—that is, to have different views on the same data. ADO.NET binding is always provided through one of these objects.

Both ASP.NET and Windows Forms allow you to bind other types of objects to controls, including custom classes, arrays, and some collection types. However, ADO.NET binding always uses DataView and DataViewManager, so this chapter focuses on these two classes.

The DataView class acts as a view onto a single DataTable. When creating a DataView object, you specify the underlying DataTable in the constructor:

// Create a new DataView for the Customers table.
DataView view = new DataView(ds.Tables["Customers"]);

Every DataTable also provides a default DataView through the DataTable. DefaultView property:

// Obtain a reference to the default DataView for the Customers table.
DataView view = ds.Tables["Customers"].DefaultView;

The DataViewManager represents a view of an entire DataSet. As with the DataView, you can create a DataViewManager manually, passing in a reference to a DataSet as a constructor argument, or you can use the default DataViewManager provided through the DataSet.DefaultViewManager property.

The DataView and DataViewManager provide three key features:

  • Sorting based on any column criteria
  • Filtering based on any combination of column values
  • Filtering based on the row state (such as deleted, inserted, and unchanged)


Previous_Page_.gif Next_Page_.gif





Personal tools