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