Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->编程语言 ->ASP.NET ->正文

Windows Forms中的数据绑定(一)

来源:Linuxdby.com 作者:Webmaster 时间:2007-04-28 点击: [收藏] [投稿]
Windows Forms中的数据绑定

作者:刘志波  

摘要:这篇文章是讲解在Windows Forms中如何使用ADO.NET简单的将Form和包含任何结构的数据绑定在一起。通过简单或者复杂的数据绑定,把Form的control的属性绑定到指定的数据上。
目标:
 学习Microsoft.NET平台中数据绑定的基础知识
 学习怎样生成一个简单的数据绑定form
 学习如何往你生成的数据绑定form中添加ComboBox和ListBox
 Learn how to base data-bound forms on the results of parameterized queries.
 学习如何绑定TextBox的数据
前提:
阅读这篇文章应当了解一下内容:
 理解关系数据库以及知道如何访问它
 了解结构化查询语言SQL
 能够访问某一个数据库服务,比如SQL Server或者是Access
内容:
数据绑定和Windows Form的基础知识
生成简单的数据绑定Windows Form
使用ComboBox和ListBox
使用TextBox的数据绑定
总结
A. 数据绑定和Windows Form的基础知识
一般来讲,数据绑定是指在运行时期自动设置一个或者多个控件的属性从结构化的数据源自动获得数据的过程。Windows Forms使用ADO.NET来实现数据绑定。使用数据绑定,就不再需要写代码来实现连接(Connection)和生成数据集了(DataSet),当然了在一个没有绑定数据的form中,这些工作还是要自己手写的。Microsoft.NET的wizard会为你生成必要的ADO.NET代码,而不需要自己手写。
Windows Form可以让你轻松的绑定几乎是包含数据的任何结构。这就意味着你可以帮定任何传统的数据存储,比如是存储在Access或者SQL Server表中的数据,或者是从文件中读取的数据,其他控件包含的数据,数组中的数据。数据是怎样包含在结构中的对我们这篇文章来说并不重要。
在你把一个form绑定到数据上后,你就可以把form上的控件和指定的数据元素绑定起来。一般常用的数据绑定包括把TextBox的Text属性和数据源的某列绑定起来。你同样可以帮定控件的图形属性、背景图属性,或者是form上的任何控件的任何属性。
Windows Form包括两种形式的数据绑定:简单型和复杂型。他们有各自的优点。
简单绑定允许你把一个控件绑定到单独的数据元素上,这种绑定常用在把一个表中某列的值帮定到一个form的控件上。使用这种方式,一般是用在仅仅显示单个值的控件上。简单绑定一般是绑定TextBox或者Label的数据。
复杂绑定允许你绑定多个数据元素,常用在把一个表中的多个列或者是多行帮定到控件上。支持复杂绑定的控件有:DataGrid、ComboBox、ListBox。
B. 生成简单的数据绑定Windows Form
.NET开发环境中使用的最基本的数据绑定用途是在一个DataGrid中显示一个表的内容。下面的这个例子说明了几个基本的步骤:(不包括细节)


1. 生成一个Windows Form
2. 在form中生成、配置一个DataSet
3. 在form中创建一个DataGrid,并且把他绑定到数据上
使用这个步骤形成的一个例子如图1所示

图1. 生成简单的数据绑定Form的结果
生成示例Form
下面是创建示例Form的详细步骤:
1. 点击File,点击New,然后点击Project。接着会显示New Project对话框。
2. 在对话框左边的树行图中选择Project Type。就这个例子而言,选择Visual Basic Projects。
3. 在对话框右边的模板列表中选择Windows Application。
4. 填写一个名称,并且选择你要保存的路径。接着点击OK来生成这个Project。
5. 按下F4来显示这个form的属性视图。将form的Name属性改为frmCustomers。
6. 将form的Text属性改为Customer Information。
生成并且配置数据集(DataSet)
一旦你创建好project和form后,就可以创建和配置隐藏在form下的DataSet。一个DataSet是存储在内存中的包含表、关系、约束的缓存。DataSet中的每一个Table都包含有Row和Column的一个集合。由于DataSet中记录了数据的原始状态和当前状态,就可以跟踪在数据上所做的任何操作。DataSet中的数据是可以被更新的。
数据绑定前要创建包含有SQL语句的DataAdaper。按照下面的步骤生成Connection和DataAdaper。
1. 在ToolBox的Data标签上,选择SqlDataAdaper,把他拖放到form中。接着会显示Data Adapter Configuration Wizard。然后点击Next。
2. 点击New Connection来生成一个新的数据连接。接着会显示如下图2所示的Data Link Properties对话窗。

图2. 使用Data Link Properties对话框指定连接信息
3. 将Server Name改为你要连接的数据库的名字。在我们这个例子中,是(local)。
4. 将User Name、Password改为连接数据库必要的验证信息。
5. 选择Northwind数据库作为示例使用的数据库。
6. 点击OK返回到Wizard,然后点击Next。
7. Wizard允许你指定Query Type,如下图3所示。选择Use SQL Statements,然后点击Next。

图3. 指定查询类型
8. 输入SQL查询语句或者是点击Query Builder来生成你所需要的查询语句。在我们这个示例中,输入如下的查询语句:
9. select CustomerID, CompanyName, ContactName, ContactTitle, Country from Customers
10. 点击Next,然后点击Finish来完成这个过程。注意,向导已经为你生成了sqlConnection1和sqlDataAdatper1两个对象。
sqlConnection1对象包括了怎样连接数据库的信息。sqlDataAdaper1对象包括了从数据库中返回表和列的查询信息。
注意:由于我们的示例使用的是SQL Server数据库,因此使用了SqlDataAdapter,他仅仅用在访问SQL Server数据库上。如果你使用OLEDB连接其他类型的数据库,你应该使用OleDbDataAdapter。
生成数据集对象(DataSet)
接着就是生成一个数据集对象(DataSet),这个DataSet使用的是刚才生成的DataAdapter的查询语句。按照下面的步骤来生成一个DataSet:
1. 点击Data,然后点击Generate DataSet。接着会显示如下图4所示的Generate DataSet对话框。

图4. Generate Dataset对话框指定对象名和其他的属性
2. 输入dsCustomers作为要生成的DataSet对象的名字。注意保证你选择了Add this dataset to the designer选项。点击OK。就这样生成了所需要的DataSet。

 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:Oracle Provider for .NET扩展了ADO.NET(ZT)   下一篇:C#学习笔记之七(network I/O, Asynchonouse network I/O)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号