总结.NET开发中ADO.NET的应用(5)_.Net教程
教程Tag:暂无Tag,欢迎添加,赚取U币!
推荐:关于Gridview的多种使用方法总结asp.net中 Gridview的多种使用方法总结,具体如下面 截图,并包括详细源代码注释,需要的请下载。 1:在Gridview中无须编写后台代码,直接实现增除删改 2:在Gridview中添加新记录 3:在Gridview中实现编辑和更新操作 4:在Gridview中实现一次性更新所有记录
如果Form上有个DataGrid的DataGrid.DataSource = myDataSet;DataGrid.DataMember = "customers",那么这个DataGrid的数据源就在myBindingManagerBaseParent的管理之下了。
同样简单数据绑定的控件的DataSource也是跟 BindingManagerBase的DataSource一样,DataMember是BindingManagerBase的DataMember指定的那个表的某一列时,这个控件的数据源也在这个myBindingManagerBaseParent管理之下了:
dataGrid1.DataSource = myDataSet;
dataGrid1.DataMember = "customers";
textCustomerId.DataBindings.Add
(new Binding("Text",myDataSet,"customers.customerid"));
//TextBox的Text属性跟
//myDataSet的customers表的customerid字段绑定
BindingManagerBase控制的数据源有个当前行的概念,控件一旦跟数据源绑定后,DataGrid将显示数据源表的所有数据,不过在DataGrid的行标头里有个黑色的三角箭头用来指示当前行。简单绑定控件中显示的值将是数据源当前行的内容。
所以,只要我们改变BindingManagerBase的指针就行了,这个可以在界面上通过点击要到的那一行来改变当前行,也可以在程序中改变当前行的设置:
myBindingManagerBaseParent.Position = 10;
BindingManagerBase.Position属性的变化就会引起BindingManagerBase当前行的变化,也就是跟这个数据源绑定的DataGrid的当前行的变化,简单绑定控件的显示内容也就随之改变了。
BindingManagerBase的DataSource可以是DataSet,DataSet中可以有多个DataTable,这些DataTable可以通过DataRelaton(关系)联系在一起,形成父表/子表的关系。比如,还是上面举过的例子,一个DataGrid显示Customer表,同时还想要有一个DataGrid来显示当前Customer所有的order。这样我们就会需要两个BindingManagerBase了,一个BindingManagerBase对应Customer表,另一个BindingManagerBase对应order表,而且这个order表还要考虑到同Customer表的关系。
对应Customer的BindingManagerBase上面我们已经建立好了,下面我们来建立对应order的BindingManagerBase:
首先我们要建立Customer表和order表之间的关系myRelation:
DataColumn ParentColumn = myDataSet.Tables["customers"].Columns["customerid"];
//要建立关系的父表的列,相当于主键
DataColumn ChildColumn = myDataSet.Tables["orders"].Columns["customerid"];
//要建立关系的子表的列,相当于外键
DataRelation myRelation = new DataRelation("myRelation",ParentColumn,ChildColumn,false);
//根据父表,子表的相关列建立关系
然后,通过关系,建立对应order表的BindingManagerBase:
myBindingManagerBaseChild = this.BindingContext[myDataSet,"customers.myRelation"]; //这个数据源将解析为一个父表中的客户对应的所有的order
这样,当对应Customer的BindingManagerBase的当前行改变时,对应order的BindingManagerBase也将跟着变化,他们之间的关系是由myRelation决定的
分享:String.Empty、NULL、“”的不同之处在asp.net(c#)中 String.Empty、NULL、 3个语法 经常使用,作用是判断字符串是否为空。 本文就它们彼此的不同之处做一粗略说明。 string.Empty就相当于 一般用于字符串的初始化 比如: stringa; Console.WriteLine(a);//这里会报错,因为没有初始化a 而下
相关.Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP发送Email实例(可带附件)
- js实现广告漂浮效果的小例子
- asp.net Repeater 数据绑定的具体实现
- Asp.Net 无刷新文件上传并显示进度条的实现方法及思路
- Asp.net获取客户端IP常见代码存在的伪造IP问题探讨
- VS2010 水晶报表的使用方法
- ASP.NET中操作SQL数据库(连接字符串的配置及获取)
- asp.net页面传值测试实例代码
- DataGridView - DataGridViewCheckBoxCell的使用介绍
- asp.net中javascript的引用(直接引入和间接引入)
- 三层+存储过程实现分页示例代码
- 相关链接:
- 教程说明:
.Net教程-总结.NET开发中ADO.NET的应用(5)。