国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

C#中TreeView實現適合兩級節點的選中節點方法

2020-01-24 01:28:13
字體:
來源:轉載
供稿:網友

本文實例講述了C#中TreeView實現適合兩級節點的選中節點方法。分享給大家供大家參考。具體如下:

class TreeViewChecked{  bool isfirst = true;  public TreeViewChecked(TreeView treeView)  {   treeView.AfterCheck += new TreeViewEventHandler(treeView_AfterCheck);   treeView.AfterSelect += new TreeViewEventHandler(treeView_AfterSelect);  }  /// <summary>  /// 點擊文字,選中checkbox  /// </summary>  /// <param name="sender"></param>  /// <param name="e"></param>  void treeView_AfterSelect(object sender, TreeViewEventArgs e)  {   if (e.Node.Checked)    e.Node.Checked = false;   else    e.Node.Checked = true;   if (isfirst)   {    isfirst = false;    e.Node.TreeView.Nodes[0].Checked = false;   }  }  /// <summary>  /// 選中子節點,勾選父節點,選中父節點,勾選子節點  /// </summary>  /// <param name="sender"></param>  /// <param name="e"></param>  void treeView_AfterCheck(object sender, TreeViewEventArgs e)  {   CheckTreeNode(e.Node);  }  /// <summary>  /// 選中子節點,勾選父節點,選中父節點,勾選子節點  /// </summary>  /// <param name="node"></param>  private void CheckTreeNode(TreeNode node)  {   node.TreeView.AfterCheck -= new TreeViewEventHandler(treeView_AfterCheck);   //如果不等于null,說明選擇的是子節點   if (node.Parent != null)   {    TreeNode parent = node.Parent as TreeNode;    //如果該節點是選中的    if (node.Checked)    {     //判斷其父節點是否被選中,如果沒有被選中則選中它     if (parent.Checked == false)     {      parent.Checked = true;     }    }    else    {     bool ischecked = false;     foreach (TreeNode child in parent.Nodes)     {      if (child.Checked)      {       ischecked = true;       break;      }     }     if (ischecked)      parent.Checked = true;     else      parent.Checked = false;    }   }//如果等于null,說明選擇的是根節點   else   {    foreach (TreeNode child in node.Nodes)    {     child.Checked = node.Checked;    }   }   node.TreeView.AfterCheck += new TreeViewEventHandler(treeView_AfterCheck);  }}

希望本文所述對大家的C#程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 克东县| 抚顺市| 延长县| 柳河县| 错那县| 奉节县| 白玉县| 颍上县| 贵南县| 香河县| 安陆市| 碌曲县| 襄垣县| 资溪县| 汝城县| 富阳市| 屯留县| 云浮市| 云霄县| 庆安县| 孟连| 云浮市| 同德县| 枞阳县| 高尔夫| 云和县| 简阳市| 湖口县| 西充县| 肇庆市| 吴川市| 皋兰县| 乌兰县| 邯郸市| 满洲里市| 绵阳市| 山丹县| 云霄县| 柘城县| 新兴县| 沁阳市|