The DataView and DataViewManager
Data binding depends on two classes in the
. 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
so this chapter focuses on these two classes.
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"]);
DataTable also provides a default
DataView through the
// Obtain a reference to the default DataView for the Customers table. DataView view = ds.Tables["Customers"].DefaultView;
DataViewManager represents a view of an entire
DataSet. As with the
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
DataViewManager provide three key features: ...