C# TreeView 连续点击 不触发AfterCheck事件
生活随笔
收集整理的這篇文章主要介紹了
C# TreeView 连续点击 不触发AfterCheck事件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
創建一個類 TreeView2
namespace System.Windows.Forms {public class TreeView2 : TreeView{protected override void WndProc(ref Message m){if (m.Msg != 0x203){base.WndProc(ref m);}}} }然后前臺放置一個TreeView控件。名叫:treeView1
后臺代碼:
private void Form3_Load(object sender, EventArgs e){//測試數據TreeNode t = new TreeNode();t.Text = "所有權限";TreeNode t1 = new TreeNode();t1.Text = "會員消費";t.Nodes.Add(t1);for (int i = 0; i < 100; i++){TreeNode t2 = new TreeNode();t2.Text = "Test" + i;t1.Nodes.Add(t2);}this.treeView1.CheckBoxes = true;this.treeView1.Nodes.Add(t);}private void CheckAllChildNodes(TreeNode treeNode, bool nodeChecked){foreach (TreeNode node in treeNode.Nodes){node.Checked = nodeChecked;if (node.Nodes.Count > 0){this.CheckAllChildNodes(node, nodeChecked);}}}private void treeView1_AfterCheck(object sender, TreeViewEventArgs e){if (e.Action != TreeViewAction.Unknown){if (e.Node.Nodes.Count > 0){this.CheckAllChildNodes(e.Node, e.Node.Checked);}}}最后,將Form3.Designer.cs 文件中的 TreeView 全部替換成我們的 TreeView2
轉載于:https://www.cnblogs.com/hanjun0612/p/9779837.html
總結
以上是生活随笔為你收集整理的C# TreeView 连续点击 不触发AfterCheck事件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Windows如何安装MSMQ消息队列
- 下一篇: HenCoder Android开发进阶