總結(jié).NET開發(fā)中ADO.NET的應(yīng)用(5)_.Net教程
教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!
推薦:關(guān)于Gridview的多種使用方法總結(jié)asp.net中 Gridview的多種使用方法總結(jié),具體如下面 截圖,并包括詳細(xì)源代碼注釋,需要的請(qǐng)下載。 1:在Gridview中無(wú)須編寫后臺(tái)代碼,直接實(shí)現(xiàn)增除刪改 2:在Gridview中添加新記錄 3:在Gridview中實(shí)現(xiàn)編輯和更新操作 4:在Gridview中實(shí)現(xiàn)一次性更新所有記錄
如果Form上有個(gè)DataGrid的DataGrid.DataSource = myDataSet;DataGrid.DataMember = "customers",那么這個(gè)DataGrid的數(shù)據(jù)源就在myBindingManagerBaseParent的管理之下了。
同樣簡(jiǎn)單數(shù)據(jù)綁定的控件的DataSource也是跟 BindingManagerBase的DataSource一樣,DataMember是BindingManagerBase的DataMember指定的那個(gè)表的某一列時(shí),這個(gè)控件的數(shù)據(jù)源也在這個(gè)myBindingManagerBaseParent管理之下了:
dataGrid1.DataSource = myDataSet;
dataGrid1.DataMember = "customers";
textCustomerId.DataBindings.Add
(new Binding("Text",myDataSet,"customers.customerid"));
//TextBox的Text屬性跟
//myDataSet的customers表的customerid字段綁定
BindingManagerBase控制的數(shù)據(jù)源有個(gè)當(dāng)前行的概念,控件一旦跟數(shù)據(jù)源綁定后,DataGrid將顯示數(shù)據(jù)源表的所有數(shù)據(jù),不過(guò)在DataGrid的行標(biāo)頭里有個(gè)黑色的三角箭頭用來(lái)指示當(dāng)前行。簡(jiǎn)單綁定控件中顯示的值將是數(shù)據(jù)源當(dāng)前行的內(nèi)容。
所以,只要我們改變BindingManagerBase的指針就行了,這個(gè)可以在界面上通過(guò)點(diǎn)擊要到的那一行來(lái)改變當(dāng)前行,也可以在程序中改變當(dāng)前行的設(shè)置:
myBindingManagerBaseParent.Position = 10;
BindingManagerBase.Position屬性的變化就會(huì)引起B(yǎng)indingManagerBase當(dāng)前行的變化,也就是跟這個(gè)數(shù)據(jù)源綁定的DataGrid的當(dāng)前行的變化,簡(jiǎn)單綁定控件的顯示內(nèi)容也就隨之改變了。
BindingManagerBase的DataSource可以是DataSet,DataSet中可以有多個(gè)DataTable,這些DataTable可以通過(guò)DataRelaton(關(guān)系)聯(lián)系在一起,形成父表/子表的關(guān)系。比如,還是上面舉過(guò)的例子,一個(gè)DataGrid顯示Customer表,同時(shí)還想要有一個(gè)DataGrid來(lái)顯示當(dāng)前Customer所有的order。這樣我們就會(huì)需要兩個(gè)BindingManagerBase了,一個(gè)BindingManagerBase對(duì)應(yīng)Customer表,另一個(gè)BindingManagerBase對(duì)應(yīng)order表,而且這個(gè)order表還要考慮到同Customer表的關(guān)系。
對(duì)應(yīng)Customer的BindingManagerBase上面我們已經(jīng)建立好了,下面我們來(lái)建立對(duì)應(yīng)order的BindingManagerBase:
首先我們要建立Customer表和order表之間的關(guān)系myRelation:
DataColumn ParentColumn = myDataSet.Tables["customers"].Columns["customerid"];
//要建立關(guān)系的父表的列,相當(dāng)于主鍵
DataColumn ChildColumn = myDataSet.Tables["orders"].Columns["customerid"];
//要建立關(guān)系的子表的列,相當(dāng)于外鍵
DataRelation myRelation = new DataRelation("myRelation",ParentColumn,ChildColumn,false);
//根據(jù)父表,子表的相關(guān)列建立關(guān)系
然后,通過(guò)關(guān)系,建立對(duì)應(yīng)order表的BindingManagerBase:
myBindingManagerBaseChild = this.BindingContext[myDataSet,"customers.myRelation"]; //這個(gè)數(shù)據(jù)源將解析為一個(gè)父表中的客戶對(duì)應(yīng)的所有的order
這樣,當(dāng)對(duì)應(yīng)Customer的BindingManagerBase的當(dāng)前行改變時(shí),對(duì)應(yīng)order的BindingManagerBase也將跟著變化,他們之間的關(guān)系是由myRelation決定的
分享:String.Empty、NULL、“”的不同之處在asp.net(c#)中 String.Empty、NULL、 3個(gè)語(yǔ)法 經(jīng)常使用,作用是判斷字符串是否為空。 本文就它們彼此的不同之處做一粗略說(shuō)明。 string.Empty就相當(dāng)于 一般用于字符串的初始化 比如: stringa; Console.WriteLine(a);//這里會(huì)報(bào)錯(cuò),因?yàn)闆](méi)有初始化a 而下
相關(guān).Net教程:
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實(shí)例(可帶附件)
- js實(shí)現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實(shí)現(xiàn)
- Asp.Net 無(wú)刷新文件上傳并顯示進(jìn)度條的實(shí)現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問(wèn)題探討
- VS2010 水晶報(bào)表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(kù)(連接字符串的配置及獲取)
- asp.net頁(yè)面?zhèn)髦禍y(cè)試實(shí)例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲(chǔ)過(guò)程實(shí)現(xiàn)分頁(yè)示例代碼
.Net教程Rss訂閱編程教程搜索
.Net教程推薦
- 解析ASP.NET Routing對(duì)請(qǐng)求的處理方式
- C#中連接兩個(gè)DataTable,相當(dāng)于Sql的InnerJoin
- ASP.NET2.0向其它網(wǎng)頁(yè)傳遞信息的方法
- 談.net 中的職責(zé)鏈模式的使用
- 淺析asp.net 和 access 聯(lián)合開發(fā)的分頁(yè)類
- 經(jīng)典教程:用.net動(dòng)態(tài)創(chuàng)建類的實(shí)例
- C#中調(diào)用Windows API時(shí)的數(shù)據(jù)類型對(duì)應(yīng)關(guān)系
- 基于.NET平臺(tái)的分層架構(gòu)實(shí)戰(zhàn)(三)架構(gòu)概要設(shè)計(jì)
- ASP.Net中利用CSS實(shí)現(xiàn)多界面兩法
- asp.net C#實(shí)現(xiàn)下載文件的六種方法實(shí)例
- 相關(guān)鏈接:
- 教程說(shuō)明:
.Net教程-總結(jié).NET開發(fā)中ADO.NET的應(yīng)用(5)
。