利用Linq在RadCombobox中输出分类后的数据
生活随笔
收集整理的這篇文章主要介紹了
利用Linq在RadCombobox中输出分类后的数据
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、目的:
? ?相信大家一定見過一種下拉選擇的是根據數據的類別進行分類后輸出的,這里我們討論的是如何使用Linq將已有的數據進行分類并按照分類的類別名稱進行輸出,這樣完全可以根據數據庫的數據庫的類別自動的輸出對應的類別的數據
二、列子:
? ?這里我們將會根據用戶的角色來進行分類,并且輸出。
1 protected void Page_Load(object sender, EventArgs e) 2 { 3 DataSet data = Bll_User.GetList(""); 4 var newdata = from item in data.Tables[0].AsEnumerable() 5 where item["UserState"].ToString() == "啟用" 6 group item by item["UserRole"].ToString() into g 7 select g; 8 foreach (IGrouping<string, DataRow> group in newdata) 9 { 10 Telerik.Web.UI.RadComboBoxItem radgroup = new Telerik.Web.UI.RadComboBoxItem(); 11 radgroup.BackColor = System.Drawing.Color.Black; 12 radgroup.ForeColor = System.Drawing.Color.White; 13 radgroup.Text = (group.Key == "")?"普通用戶":group.Key; 14 radgroup.IsSeparator = true; 15 RadComboBox1.Items.Add(radgroup); 16 foreach (DataRow item in group) 17 { 18 Telerik.Web.UI.RadComboBoxItem raditem = new Telerik.Web.UI.RadComboBoxItem(); 19 raditem.Text = item["UserName"].ToString(); 20 raditem.Value = item["UserID"].ToString(); 21 RadComboBox1.Items.Add(raditem); 22 } 23 } 24 }?這里我們使用了Linq中的 group by into 的語句進行的分類。
然后我們在通過 iGrouping 接口以及 IEnumerable 接口將數據添加至RadCombobox控件中的。這里我們涉及了兩層的循環,第一層是將組的信息添加到控件中,第二個循環是將該組下的信息添加到控件中。
按照這個順序就可以完整的將分類以及數據輸出。
這里再將分類的數據輸出的時候還將該項的分隔符屬性設置為了true這樣用戶就無法選擇該項了。
最后的效果圖:
因為最近時間緊所以沒有什么太多的時間整理花在寫文檔上面。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的利用Linq在RadCombobox中输出分类后的数据的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python变量
- 下一篇: 神舟十三号径向对接有多难?空间站充当路由