VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > VB.net教程 >
  • vb.net教程之数据与控件的绑定

数据与控件的绑定(相关vb.net教程)

在VB.NET中要向控件绑定一个数据源,就必须为该控件设置DataBinding属性。该属性可以访问ControlBindingsCollection类,该类对每一个控件的绑定进行管理,并且具有很多属性和方法。
Add方法为控件创建一个绑定并将它加到ControlBindingsCollection中。Add方法有3个参数语法如下:
Object.DataBindings.Add(propertyname,datasource,datamember)
其中,Object表示窗体上的有效控件;Propertyname参数表示被绑定控件的属性;Datasource参数表示被绑定的数据源,可以是任何包含数据的有效对象如DataSet,DataView或者DataTable等;Datamember参数代表被绑定给控件的数据源中的数据字段。
1.绑定前的准备工作
(1)创建一个名为db1的Access数据库,数据表Student的结构如所示:
并在表中增加以下几条记录。如所示。
(2)创建和配置数据集:
创建项目,就可以创建和配置窗体所基于的数据集了。数据集是内存中包含表、关系和约束的缓存,其中的每个表均为列和行的集合。数据集能够识别其原始状态和当前状态,因此可以跟踪发生的变化。数据集中的数据被视为可更新数据。步骤如下:
新建一个名为myDataTest的vb.net项目,将表单的Name属性改为:“frmtest”;Text属性设为“数据绑定举例”。
在表单中增加一个OleDbDataAdapter控件。这时会自动弹出“数据适配器配置向导”对话框。点击“下一步”选择“新建连接”将弹出相应的对话框,选择“Microsoft Jet 4.0 OLE DB Provider”选项,点击“Next”按钮,设定数据源。在这里设置好你的数据源后点击“OK”按钮。
在打开的对话框中选择你的数据连接,设置完毕后点击“下一步”按钮创建SQL查询语句。在SQL生成器输入中输入以下语句,并点击“完成”。此时就完成与数据源的连接工作。
SELECT StuID, StuName, StuSex, StuBorn, StuCore FROM student
在窗体的组件栏中将显示名为OleDbConnection1的OleDbConnection对象和名为OleDbDataAdapter1的 OleDbDataAdapter对象。其中,OleDbConnection1对象包含有关如何访问选定数据库的信息。 OleDbDataAdapter1对象包含一个查询,它定义了要访问的数据库中的表和列。
(3)生成数据集类:
点击“数据→生成数据集”菜单命令,此时将出现“生成数据库”对话框。在“新建”框中myDataSet作为要创建的新数据集的名称。确保选中“将此数据集添加到设计器”选项。点击 “确定”按钮。这样即可生成数据集。
完成上述步骤,在窗体的组件栏上将显示一个新的控件myDataSet1。此控件是myDataSet.xsd文件的一个引用,该文件也被添加到“解决方案资源管理器” 窗口中。
到此,准备工作结束。我们就可以将数据集绑定给控件来显示数据集中所包含的数据了。
2.绑定到DataGrid控件
(1)在窗体中增加一个DataGrid控件,调整其大小与窗体相符。并对应以下设置修改其相关属性:
DataSource属性为myDataSet1;Datamember属性为student。
完成上述步骤,即将数据集绑定到数据网格控件中了。只需再完成一个步骤,就可以看到数据网格控件中显示的数据了。
(2)虽然数据网格控件已被绑定到数据集上,但加载窗体时并不会自动填充数据集。加载窗体时,请使用窗体的Load事件过程,在数据网格控件中填充数据。代码如下:
Private Sub frmtest_Load( ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
'加载数据网格控件
MyDataSet1.Clear()
OleDbDataAdapter1.Fill(mydataset1,″student″)
End Sub
在Load事件过程中,首先需要清除数据集,然后用先前创建的OleDbDataAdapter1对象的Fill方法填充数据集。需要将表名传递给第二个参数,因为数据网格控件将使用第二个参数检索以前在DataMember属性中指定的正确DataMember (student)。
(3)现在,我们可以来看看我们的成果了,试运行一下程序。
在“解决方案资源管理器”窗口中,右击项目名称,从快捷菜单中选择“属性”命令,在打开的对话框中点击“启动对象”组合框并从列表中选择“frmtest”选项。然后点击“确定”按钮。最后按下F5键即可运行此项目。
3.绑定到TextBox控件
在上面我们介绍的实例窗体frmtest上删除DataGrid控件,并清除frmtest_Load中的代码。按照所示设计程序界面。
上图中各控件相关属性是:
(其余的控件,我们将在下面的内容中用到。)
界面创建完成以后,我们就可以把数据集绑定到每个TextBox控件上了。步骤如下:
(1)选择要绑定的TextBox控件。按下F4键查看其“属性” 窗口。点击展开“DataBindings”属性,在“DataBindings” 中选择Text属性。
(2)打开组合框并将各个文本框绑定到相应的字段。如需要将“TxtStuID”文本框绑定到StuID字段,请点击myDataSet1上的“+”号,再点击 student上的“+”号,然后选择StuID字段。
(3)按照上述方法把其他几个文本框绑定到相应的字段上。
需要说明的是:虽然已绑定各个字段但还必须编写代码才能在首次加载窗体时用数据填充窗体。代码如下:
Private Sub frmtest_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
MyDataSet1.Clear()
OleDbDataAdapter1.Fill(MyDataSet1, ″student″)
End Sub
按下F5键试运行一下程序。仔细观察一下运行结果我们就会发现,程序在实现时自动用数据集中的第一条记录来填充各件控件。

相关教程