演练:文档级项目中的简单数据绑定
更新:2007 年 11 月
适用于 |
---|
本主题中的信息仅适用于指定的 Visual Studio Tools for Office 项目和 Microsoft Office 版本。 项目类型
Microsoft Office 版本
有关更多信息,请参见按应用程序和项目类型提供的功能。 |
此演练演示文档级项目中的数据绑定的基础知识。将 SQL Server 数据库中的单个数据字段绑定到 Microsoft Office Excel 中的命名区域。此演练还演示如何添加控件,让您能够滚动查看表中的所有记录。
本演练阐释以下任务:
为 Excel 项目创建数据源。
将控件添加到工作表中。
滚动查看数据库记录。
说明: |
---|
对于在以下说明中使用的某些 Visual Studio 用户界面元素,您的计算机可能会显示不同的名称或位置。这些元素取决于您使用的 Visual Studio 版本及设置。有关更多信息,请参见Visual Studio 设置。 |
先决条件
您需要以下组件来完成本演练:
Visual Studio Tools for Office(Visual Studio 2008 专业版 和 Visual Studio Team System 的可选组件)。
Microsoft Office Excel 2003 或 Microsoft Office Excel 2007。
访问带有 Northwind SQL Server 示例数据库的服务器。
从 SQL Server 数据库中读取数据和向其中写入数据的权限。
创建新项目
在此步骤中,您将创建一个 Excel 工作簿项目。
创建新项目
- 使用 Visual Basic 或 C# 创建一个名为“我的简单数据绑定”的 Excel 工作簿项目。确保已选择“创建新文档”。有关更多信息,请参见如何:创建 Visual Studio Tools for Office 项目。
Visual Studio 在设计器中打开新的 Excel 工作簿并将“我的简单数据绑定”项目添加到“解决方案资源管理器”中。
创建数据源
使用“数据源”窗口向您的项目中添加类型化数据集。
创建数据源
如果“数据源”窗口不可见,请单击“数据”菜单上的“显示数据源”。
说明: 如果“显示数据源”不可用,请在 Excel 工作簿中单击,然后重新检查。
单击“添加新数据源”以启动“数据源配置向导”。
选择“数据库”,然后单击“下一步”。
选择到 Northwind 示例 SQL Server 数据库的数据连接,或者使用“新建连接”按钮添加新连接。
选择或创建连接后,单击“下一步”。
如果选择了该选项,请将其清除以保存连接,然后单击“下一步”。
展开“数据库对象”窗口中的“表”节点。
选择“Customers”表旁边的复选框。
单击“完成”。
向导将“Customers”表添加到“数据源”窗口。还将一个类型化数据集添加到在“解决方案资源管理器”中可见的项目中。
将控件添加到工作表
对于此演练,第一个工作表上需要两个命名范围和四个按钮。首先,从“数据源”窗口添加两个命名范围,这样它们就会自动绑定到数据源。然后,从“工具箱”添加按钮。
添加两个命名范围
验证“我的简单数据绑定.xls”工作簿是否已在 Visual Studio 设计器中打开并显示“Sheet1”。
打开“数据源”窗口并展开“Customers”节点。
选择“CompanyName”列,然后单击出现的下拉箭头。
在下拉列表中选择“NamedRange”,然后将“CompanyName”列拖动到单元格“A1”。
在单元格“A1”中会创建一个名为 companyNameNamedRange 的 NamedRange 控件。同时,会将一个名为 customersBindingSource 的 BindingSource、一个表适配器和一个 DataSet 实例添加到该项目中。该控件绑定到 BindingSource,接着后者绑定到 DataSet 实例。
在“数据源”窗口中选择“CustomerID”列,然后单击出现的下拉箭头。
在下拉列表中单击“NamedRange”,然后将“CustomerID”列拖动到单元格“B1”。
另一个名为 customerIDNamedRange 的 NamedRange 控件会在单元格“B1”中创建,并且该控件绑定到 BindingSource。
添加四个按钮
从“工具箱”的“公共控件”选项卡向工作表的单元格“A3”中添加一个 Button 控件。
此按钮被命名为 Button1。
按照此顺序在下列单元格中再添加三个按钮,使其名称如下所示:
单元格
(名称)
B3
Button2
C3
Button3
D3
Button4
下一步向按钮添加文本,并在 C# 中添加事件处理程序。
初始化控件
设置按钮文本并添加 Startup 事件期间的事件处理程序。
初始化控件
在“解决方案资源管理器”中右击“Sheet1.vb”或“Sheet1.cs”,再单击快捷菜单上的“查看代码”。
向 Sheet1_Startup 方法添加以下代码,从而为每个按钮设置文本。
With Me .Button1.Text = "|<" .Button2.Text = "<" .Button3.Text = ">" .Button4.Text = ">|" End With
this.button1.Text = "|<"; this.button2.Text = "<"; this.button3.Text = ">"; this.button4.Text = ">|";
仅对于 C#,向 Sheet1_Startup 方法添加用于处理按钮单击事件的事件处理程序。
this.button1.Click += new EventHandler(button1_Click); this.button2.Click += new EventHandler(button2_Click); this.button3.Click += new EventHandler(button3_Click); this.button4.Click += new EventHandler(button4_Click);
现在添加代码以处理按钮的 Click 事件,以便用户可以浏览记录。
添加用于滚动记录的代码
在每个按钮的 Click 事件处理程序中添加代码以在记录中移动。
移动到第一条记录
添加 Button1 按钮的 Click 事件的事件处理程序,并添加以下代码以移动到第一条记录:
Private Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button1.Click Me.CustomersBindingSource.MoveFirst() End Sub
private void button1_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveFirst(); }
移动到上一条记录
添加 Button2 按钮的 Click 事件的事件处理程序,并添加以下代码以后退一个位置:
Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button2.Click Me.CustomersBindingSource.MovePrevious() End Sub
private void button2_Click(object sender, System.EventArgs e) { this.customersBindingSource.MovePrevious(); }
移动到下一条记录
添加 Button3 按钮的 Click 事件的事件处理程序,并添加以下代码以前进一个位置:
Private Sub Button3_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button3.Click Me.CustomersBindingSource.MoveNext() End Sub
private void button3_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveNext(); }
移动到最后一条记录
添加 Button4 的 Click 事件的事件处理程序,并添加以下代码以移动到最后一条记录:
Private Sub Button4_Click(ByVal sender As Object, ByVal e As System.EventArgs) _ Handles Button4.Click Me.CustomersBindingSource.MoveLast() End Sub
private void button4_Click(object sender, System.EventArgs e) { this.customersBindingSource.MoveLast(); }
测试应用程序
现在可以对工作簿进行测试,以确保能浏览数据库中的记录。
测试工作簿
按 F5 运行项目。
确认第一条记录显示在单元格“A1”和“B1”中。
单击“>”(Button3) 按钮,然后确认下一条记录出现在单元格“A1”和“B1”中。
单击其他滚动按钮以确认记录按预期发生变化。
后续步骤
此演练演示将命名范围绑定到数据库中的字段的基本操作。下一步可能要执行以下几项任务:
缓存数据,以使其可以脱机使用。有关更多信息,请参见如何:缓存数据以便脱机使用或在服务器上使用。
将单元格绑定到表中的多个列,而不是绑定到一个字段。有关更多信息,请参见演练:文档级项目中的复杂数据绑定。
使用 BindingNavigator 控件滚动记录。有关更多信息,请参见如何:使用 Windows 窗体 BindingNavigator 控件定位数据。