日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

.net动态控件的使用(listview ,treeview,tabControl)

發布時間:2023/12/10 编程问答 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 .net动态控件的使用(listview ,treeview,tabControl) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

對于控件中顯示的數據可能是不固定的。如果固定,數據發生了變化,又要重新設計,這樣浪費成本,資源。
所以有用代碼操作控件,自由度,可控度高。

1,樹控件

//把 tv 作為全局變量 , 這是對動態控件取值的一種方式TreeView tv = new TreeView();private void Form1_Load(object sender, EventArgs e){//把tv加入窗體Controls.Add(tv);//填滿tv.Dock = DockStyle.Fill;DataTable dt = DBHelper.ExecuteTable("select * from grade");//遍歷年級foreach (DataRow row in dt.Rows){//一行 一個節點TreeNode node = new TreeNode();//樹節點 是 年級名node.Text = row["GradeName"].ToString();tv.Nodes.Add(node);//得到年級對應的這個班級DataTable classs = DBHelper.ExecuteTable(string.Format("select * from class where gradeid = '{0}'",row["gradeid"]));//把班級名 加到這個年級下foreach (DataRow item in classs.Rows){node.Nodes.Add(item["ClassName"].ToString());}}//雙擊table 生成點擊 事件tv.AfterSelect += Tv_AfterSelect;}private void Tv_AfterSelect(object sender, TreeViewEventArgs e){//測試 MessageBox.Show(tv.SelectedNode.Text);//動態控件好處之一 值隨數據庫的改變 自身 樣式 也隨之改變}

2 tabcontrol & listview

private void Form2_Load(object sender, EventArgs e){ArrayList arr = new ArrayList();//tabcontrol + listview 動態控件TabControl tc = new TabControl();tc.Dock = DockStyle.Fill;this.Controls.Add(tc);DataTable grade = DBHelper.ExecuteTable("select * from Grade");foreach (DataRow row in grade.Rows){//一個選項卡頁 對應 一個 年級名TabPage tp = new TabPage(row["gradeName"].ToString());//把年級 添加到 選項卡 中的 選項頁tc.TabPages.Add(tp);// 實例化一個 listview ListView lv = new ListView();//并 加入到 每個 選項卡頁tp.Controls.Add(lv);//雙擊事件 lv.DoubleClick += Lv_DoubleClick;lv.Dock = DockStyle.Fill;//得到班級信息DataTable classs = DBHelper.ExecuteTable(string.Format("select * from class where gradeid = '{0}'", row["gradeid"]));foreach (DataRow item in classs.Rows){//遍歷 班級表 并把班級 加入到 每個listview 中ListViewItem lvi = new ListViewItem(item["ClassName"].ToString());lv.Items.Add(lvi);}}}private void Lv_DoubleClick(object sender, EventArgs e){//這是得到 listview 中的 選中值 , 英文好一點 就 看懂了 但這種方式最死,而且 蠢 易出錯//string value = ( ((Controls[0] as TabControl).SelectedTab as TabPage).Controls[0] as ListView ).SelectedItems[0].Text;//MessageBox.Show(value);//第三種方式 , 面向對象思想的 運用 //如果 list view 觸發了 這個雙擊事件 就得到 選中的值string value = (sender as ListView).SelectedItems[0].Text;MessageBox.Show(value);}

創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎

總結

以上是生活随笔為你收集整理的.net动态控件的使用(listview ,treeview,tabControl)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。