自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

LINQ編程實(shí)戰(zhàn)TreeView動(dòng)態(tài)綁定數(shù)據(jù)

開(kāi)發(fā) 后端
本文將介紹LINQ編程實(shí)戰(zhàn)TreeView動(dòng)態(tài)綁定數(shù)據(jù),LINQ在實(shí)際開(kāi)發(fā)過(guò)程中比較簡(jiǎn)單,也適合大家實(shí)際使用。希望能給大家?guī)?lái)一點(diǎn)幫助……

首先,先來(lái)重新創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)表,這里的數(shù)據(jù)庫(kù)表與之前所創(chuàng)建的表有些不同,大家可以自己對(duì)比一下。

  1. CREATE TABLE [dbo].[Me_Menu] (  
  2.     [Menu_Id] [int] IDENTITY (1, 1) NOT NULL ,/**節(jié)點(diǎn)ID*/  
  3.     [Menu_ParentName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,/**父節(jié)點(diǎn)名*/  
  4.     [Menu_ChildName] [nvarchar] (50) COLLATE Chinese_PRC_CI_AS NOT NULL ,/**子節(jié)點(diǎn)名*/  
  5.     [Menu_Order] [int] NULL ,/**//*排序用*/  
  6. ) ON [PRIMARY]  
  7. GO 

創(chuàng)建好數(shù)據(jù)庫(kù)表后,就是打開(kāi)數(shù)據(jù)庫(kù)連接了,具體的打開(kāi)方法在這里就不哆嗦了,可參考一下WPF(Winform)中動(dòng)態(tài)創(chuàng)建TreeView 中第二步。

然后,一起來(lái)看看其數(shù)據(jù)的綁定方法吧:

  1. private void BindMenuData()  
  2.         {  
  3.             string sql = "Select distinct Menu_ParentName,Menu_ChildName From Me_Menu order by Menu_Order desc";  
  4.             DataTable menudt = db.GetDbTable(sql);//從數(shù)據(jù)庫(kù)中查詢(xún)出該數(shù)據(jù)庫(kù)表,GetDbTable()方法請(qǐng)參見(jiàn)wpf動(dòng)態(tài)創(chuàng)建TreeView中的DBbuild類(lèi)  
  5.             //LINQ查詢(xún)  
  6.             var menuData = from menu in menudt.AsEnumerable()                       
  7.                                group menu by menu.Field("Menu_ParentName"); //按Menu_ParentName來(lái)進(jìn)行分組  
  8.  
  9.             TreeNode node;//父節(jié)點(diǎn)  
  10.             TreeNode childnd;//子節(jié)點(diǎn)  
  11.             foreach (var m in menuData) //循環(huán)查詢(xún)  
  12.             {  
  13.                 node = new TreeNode();  
  14.                 node.Text = m.Key; //獲取父節(jié)點(diǎn)名  
  15.                 foreach (var mm in m) //在分組中循環(huán)查詢(xún)  
  16.                 {  
  17.                     childnd = new TreeNode();  
  18.                     childnd.Text = mm.Field("Menu_ChildName");//獲取了節(jié)點(diǎn)名  
  19.                     if (childnd.Text != "")//如果子節(jié)點(diǎn)名不為空,則將其加入到其對(duì)應(yīng)的父節(jié)點(diǎn)中去  
  20.                     {  
  21.                         node.Nodes.Add(childnd);  
  22.                     }  
  23.                 }  
  24.                 MenuTView.Nodes.Add(node);//將所有節(jié)點(diǎn)添加到TreeView中去,其MenuTView為T(mén)reeView控件  
  25.             }  
  26.         } 

最后,在需要的地方直接調(diào)用BindMenuData()就可以了。

當(dāng)然你也可以重寫(xiě)一個(gè)帶TreeView參數(shù)的方法,如:BindMenuData(TreeView MenuTView),來(lái)動(dòng)態(tài)創(chuàng)建TreeView。

希望能給大家?guī)?lái)一點(diǎn)幫助……

【編輯推薦】

  1. 使用LINQ查詢(xún)泛型字典Dictionary
  2. 淺析Linq to SQL更新數(shù)據(jù)時(shí)容易忽略的問(wèn)題
  3. 淺談LINQ to SQL集成數(shù)據(jù)庫(kù)語(yǔ)言?xún)?yōu)劣
  4. LINQ橫向?qū)Ρ萬(wàn)oreach方法
  5. 淺談LINQ如何插入刪除和更新數(shù)據(jù)庫(kù)記錄備注
責(zé)任編輯:彭凡 來(lái)源: cnblogs
相關(guān)推薦

2009-07-28 08:24:16

GridView綁定數(shù)

2017-08-07 16:39:03

JSX動(dòng)態(tài)數(shù)據(jù)

2009-09-15 10:16:01

LINQ動(dòng)態(tài)查詢(xún)

2009-09-17 16:46:34

Linq to sql

2009-09-18 15:15:12

LINQ to SQL

2009-09-15 09:19:22

linq動(dòng)態(tài)條件

2009-09-17 13:10:48

linq動(dòng)態(tài)排序

2009-09-14 16:12:57

LINQ刪除記錄

2009-12-23 09:04:41

LINQ通用分頁(yè)

2009-09-15 09:45:23

Linq動(dòng)態(tài)條件

2009-09-17 17:03:13

LINQ動(dòng)態(tài)查詢(xún)

2009-09-14 19:14:51

LINQ動(dòng)態(tài)查詢(xún)

2009-09-17 16:20:43

Linq to sql

2009-09-14 16:41:01

LINQ嵌套

2024-09-18 09:30:41

SpringBootGroovy動(dòng)態(tài)編程

2012-01-09 11:26:15

Java

2009-09-14 13:50:35

LINQ編程模型

2009-09-07 22:29:04

LINQ組合查詢(xún)

2009-09-15 17:07:24

Linq To SQL

2009-09-07 17:32:14

LINQ檢索數(shù)據(jù)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)