配置数据集
1、在 Form1 上右键单击 SqlDataAdapter1 图标,然后单击 Generate Dataset(生成数据集)。

图 16:为 SqlDataAdapter 生成数据集
2、在 Generate Dataset(生成数据集)对话框中,选择 New dataset(新建数据集),然后键入名称 BrowseInvoiceTotalsDS。
3、位于页面底部的窗口中的 BrowseInvoiceTotals(SqlDataAdapter1) 应已被选中。单击 OK(确定)。

图 17:生成数据集属性表
下一步,我们将为 Form1 创建窗体元素。
创建窗体元素
1、向 Form1 添加一个 DataGrid 控件。
2、打开工具箱,然后单击 Windows Forms(Windows 窗体)。
3、将一个 DataGrid 控件拖放到 Form1 上,右键单击 DataGrid 控件,然后单击 Properties(属性)。将 DataGrid 控件的 CaptionText 属性更改为 Invoice Report。
4、配置 DataGrid 控件的属性,以将其绑定到数据:在 Properties(属性)下的 Data(数据)部分中,将 DataSource 属性设置为 BrowseInvoiceTotalsDS1.BrowseInvoiceTotals。

图 18:DataGrid 属性页(单击图片以查看大图像)
5、调整 DataGrid 控件的大小,使所有的列都可见。
6、要填充数据集,请向 Form1 中添加一个按钮,然后将其 Text 属性和 Name 属性更改为 RunReport。
7、双击按钮打开代码窗口。将以下代码行添加到 RunReport_Click 子例程中并保存该应用程序:
BrowseInvoiceTotalsDS1.Clear ' 使用 SqlDataAdapter 填充 DS SqlDataAdapter1.Fill(BrowseInvoiceTotalsDS1) |
现在,可以测试我们的应用程序了。运行该应用程序,然后单击 RunReport 按钮。SqlDataAdapter 将连接到数据库,运行我们的存储过程和函数,加载数据集并将数据传递到数据网格中。输出结果应类似于图 19 所示的结果。

图 19:示例应用程序的输出
下一步,我们将创建一个数据维护窗体。
创建数据维护窗体
1、向 ServiceCall 项目添加一个新窗体 (Form2):在解决方案资源管理器中,单击右键项目名称,然后依次单击 Add(添加)和 Add Windows Form(添加 Windows 窗体)。
2、在 Templates(模板)下,单击 Windows Form(Windows 窗体)模板,然后单击 Open(打开)。
3、向窗体中添加一个 SqlDataAdapter 控件。将启动数据适配器配置向导。
4、为 SqlDataAdapter 选择现有的 ServiceCall 连接。对于此 SqlDataAdapter 控件,我们将让 Visual Studio .NET 为我们创建所需的存储过程。
5、单击 Create new stored procedures(创建新存储过程),然后单击 Next(下一步)。将打开 Generate the stored procedures(生成存储过程)页面。
6、单击查询生成器,将 Customers 表添加到查询,然后关闭 Add Table(添加表)对话框。
7、在关系图窗格中,选择所有的列,然后依次单击 OK(确定)和 Next(下一步)。
8、在 Create the Stored Procedures(创建存储过程)属性页中,分别为四个新存储过程提供一个名称(此示例中使用 CustomersSelect、CustomersDelete、CustomersInsert 和 CustomersUpdate),然后单击 Next(下一步)。
9、当向导的最后一页显示成功生成所有存储过程的消息时,单击 Finish(完成)。
10、打开 SqlDataAdapter 控件的属性页,查看以下属性;这些属性的值被设置为我们所提供的存储过程名称:
SelectCommand.CommandText 的值为 CustomersSelect。 DeleteCommand.CommandText 的值为 CustomersDelete。 InsertCommand.CommandText 的值为 CustomersInsert。 UpdateCommand.CommandText 的值为 CustomersUpdate。 |
Visual Studio .NET 创建了四个存储过程(基于我们提供的 Select 语句)、将其编译到数据库并配置了 SqlDataAdapter 控件以使用这些存储过程。
下一步要生成我们为 Form2 创建的 SqlDataAdapter 的数据集。
生成数据集
1、右键单击 SqlDataAdapter,然后单击 Generate DataSet(生成数据集)。
2、将数据集命名为 CustomersDS。
3、向窗体添加 DataGrid 控件,然后将该控件的 DataSource 属性设置为 CustomersDS1.Customers、CaptionText 属性设置为 Maintain Customers。
4、调整 DataGrid 控件的大小,使所有的列都可见。
5、在数据网格下添加一个按钮,将其 Text 属性和 Name 属性更改为 Load。
6、在第一个按钮旁添加另一个按钮,将其 Text 属性和 Name 属性更改为 Update。
7、双击 Load 按钮打开代码窗口,然后向 Load 按钮的单击事件中添加以下代码:
CustomersDS1.Clear() SqlDataAdapter1.Fill(CustomersDS1) |
8、在 Update 按钮的单击事件中,添加以下代码:
| SqlDataAdapter1.Update(CustomersDS1) |
运行应用程序之前,必须将项目的 Startup 对象更改为 Form2。
更改 Startup 对象
1、在解决方案资源管理器中,右键单击 ServiceCall 项目,然后单击 Properties(属性)。
2、在 Startup object(启动对象)下,将 Startup 对象更改为 Form2,然后单击 OK(确定)。
运行应用程序以打开维护窗体 (Form2)。单击 Load 按钮加载带有表中现有数据的数据网格。屏幕应类似于图 20 所示。

图 20:示例应用程序输出结果(单击图片以查看大图像)