總結.NET開發中ADO.NET的應用(5)_.Net教程

      編輯Tag賺U幣
      教程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教程/更新時間:2010-05-21
      相關.Net教程