Relations
---------
Demonstrates master detail hierarchies based on various kinds of relations.

Relation kinds showed up in this demo are as follow:

- First tab shows features of simple relations (relations between simple tables),
  including referential integrity, cascade update and cascade delete.
  It uses two simple relations, Categories - Products and Suppliers - Products.
  To see the relations, open the Schema Designer on the schemaDef component in   
  DataClass.cs.

  To see how referential integrity works, try to enter a non-existing CategoryID
  in the Products table. It won't be permitted, because the Categories - Products
  relation's EnforceConstraints property is set to True in the schema.

  To observe cascade update, try changing Suppliers.SupplierID and see how the 
  SupplierID changes correspondingly in the Products table.

  To observe cascade delete, try removing some rows from the Categories table
  and see that corresponding rows disappear from the Products table.

- Second tab shows master-detail hierarchies based on view relations.
  To see the view relations, open the Schema Designer on the schemaDef component in   
  DataClass.cs, then open data set DataSet1.
  Master-detail hierarchies are specified by bound controls' DataMember settings,
  For example, gridOrders.DataMember = "_Customers.Customers - Orders" puts the
  grid on the second level, and one of the Employee info label controls below
  the grids has DataBinding for its Text property putting it on the third level:
  "c1DataSet1 - _Customers.Customers - Orders.Employees - Orders.City".
  

- Third tab shows a relation between two composite tables (composite relation).
  To see the relation in the schema, open DataSet1 and find the Customers - Products
  view relation connecting the CustomersOrders and ProductsOrderDetails table views.
  This view relation is based on the relation Customers - Products (find it in    
  the Relations window in the schema designer) that connects two composite tables.
  In the sample form the relation is used to specify the master-detail hierarchy
  for the child grid (DataMember = "_CustomersOrders.Customers - Products").

