Using theDataFormWizardtoCreateaWindowsForm In this section, you'll use the VS .NET Data FormWizardtocreateaWindows application that accesses both the Customers and Orders tables. The Orders table contains rows that represent orders placed by the customers. The rows in the Orders table are related tothe rows in the Customers table through a foreign key: The Orders table contains a column named CustomerID that is a foreign key tothe CustomerID column of the Customers table (CustomerID is the primary key for the Customers table). The use of the foreign key defines a parent-child relationship between the Customers and Orders tables. Theform you'll create will display a row from the Customers table, along with any related rows from the Orders table. To give you a clear idea of the final goal, Figure 6.17 shows the completed form up and running. Notice that the top part of theform shows the details for the row from the Customers table where the CustomerID is ALFKI; the bottom part of theform contains a DataGrid control that displays the rows from the Orders table for that customer. When you move tothe next row in the Customers table, the rows from the Orders table for that customer are automatically displayed in the DataGrid. Figure 6.17: The running form Perform these steps to begin build the form: 1. Select File ➣ New Project. 2. In the New Project dialog box, select Empty Project, and enter DataFormWindowsApplication in the Name field. Because you'll be adding a new formto your new application shortly, there's no need to have VS .NET generate the usual blank form for you; that's why you're creating an empty project. 3. Click OK to continue. VS .NET will createa new empty project for you. Next, you'll use the DataFormWizardtocreateaform that accesses the Customers and Orders tables in the Northwind database: 1. Select Project ➣ Add New Item. 2. Select DataFormWizard from the Templates section on the right, enter the Name of theform as MyDataForm.cs, and click Open (see Figure 6.18 ). You'll then see the welcome page for theDataForm Wizard. Figure 6.18: Adding a dataformusingtheDataFormWizard 3. Click the Next button to proceed. 4. Now you enter the DataSet object you want to use in your form. You can pick an existing DataSet, or you can createa new one. Because this is a new project, you'll be creating a new DataSet. Enter myDataSet as the name for your DataSet, as shown in Figure 6.19 . Figure 6.19: Entering the name of the new DataSet 5. Click the Next button to go tothe next step. 6. You must now choose adata connection to access the database. You can pick an existing connection, or you can createa new one. Select your connection, as shown in Figure 6.20 -of course, your connection name will be different. Figure 6.20: Choosing thedata connection 7. Click the Next button to continue. 8. You now log in tothe database by specifying the password for the database user. You used the sa user when creating the database connection earlier, and you therefore need to reenter the password for that user, as shown in Figure 6.21 . Figure 6.21: Logging in tothe SQL Server Northwind database 9. Click the OK button to proceed. You now select the database tables or views you want to use in your form. The area on the bottom left of the dialog box shows the tables and views you can access using your form. The area on the bottom right shows the tables and views you've added. You add a table or view to your form by selecting it from the area on the left and clicking the right- arrow button. Tip You can also double-click on the table or view to add them to your form. When you do this, the table or view moves tothe right, indicating that you've selected them for use in your form. If you decide you don't want to use a table or view, you can unselect them usingthe left-arrow button. You can also double-click the table or view to unselect them. Select the Customers and Orders tables, as shown in Figure 6.22 . Click the Next button to proceed. Figure 6.22: Selecting the Customers and Orders tables for use in theform Because you selected two tables-Customers and Orders-your next step is to define a relationship between those tables. This relationship is used in your formto synchronize navigation between the rows in the Customers table with the rows in the Orders table: When you move toa new row in the Customers table, the rows from the Orders table will be displayed in your form. Set the following in the dialog box (as shown in Figure 6.23 ): 1. Enter myRelationship in the Name field. 2. Select Customers as the parent table. 3. Select Orders as the child table. 4. Select CustomerID as the key for each table. Warning To add the relationship to your form, click the right-arrow button. If you don't do this, your relationship won't be added to your form. 5. Click the Next button to continue. 6. Select the columns from the tables you want to display in your form. Because you added the Customers and Orders tables to your form, you'll be selecting the columns to display from these two tables. By default, all the columns from the tables are selected. You won't be displaying all the columns from the Customers or the Orders table. Unselect the City column for the Customers table. (Later, you'll see how to add this column to your form manually.) 7. Deselect the following columns for the Orders table: RequiredDate ShipAddress ShippedDate ShipCity ShipVia ShipRegion Freight ShipPostalCode ShipName ShipCountry . Using the Data Form Wizard to Create a Windows Form In this section, you'll use the VS .NET Data Form Wizard to create a Windows application that. MyDataForm.cs, and click Open (see Figure 6 .18 ). You'll then see the welcome page for the Data Form Wizard. Figure 6 .18 : Adding a data form using the Data Form