惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

博客园 - Franky
Microsoft Azure Blog
Microsoft Azure Blog
阮一峰的网络日志
阮一峰的网络日志
宝玉的分享
宝玉的分享
量子位
N
Netflix TechBlog - Medium
M
MIT News - Artificial intelligence
GbyAI
GbyAI
Apple Machine Learning Research
Apple Machine Learning Research
博客园_首页
博客园 - 叶小钗
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
酷 壳 – CoolShell
酷 壳 – CoolShell
T
Tailwind CSS Blog
Y
Y Combinator Blog
L
LangChain Blog
The Cloudflare Blog
T
The Blog of Author Tim Ferriss
U
Unit 42
Martin Fowler
Martin Fowler
aimingoo的专栏
aimingoo的专栏
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客

博客园 - cjfwu

设计模式学习4-Bridge模式 设计模式学习3-Strategy模式 设计模式学习2-Adapter模式 设计模式学习1-Facade模式 设备控制(反馈处理) 通过System.IO.Packaging实现打包和解包 将目录添加环境变量 设备控制之矩阵状态显示 windows shell 编程3(函数解释) windows shell 编程2(浏览文件夹) windows shell 编程1(概念) 不同命名空间下名称和结构相同的类相互序列化与反序列化 通过SvcUtil.exe生成客户端代码和配置 分组 在“添加引用”对话框中显示需要的Assembly 只运行一个实例 SVN操作 托盘操作 枚举的操作
获得树节点的高度
cjfwu · 2008-03-18 · via 博客园 - cjfwu

        private void treeView1_AfterCollapse(object sender, TreeViewEventArgs e) {
            treeView1.Height = GetExpandNodeCount() * treeView1.ItemHeight;    
        }

        private void treeView1_AfterExpand(object sender, TreeViewEventArgs e) {
            treeView1.Height = GetExpandNodeCount() * treeView1.ItemHeight;
        }
         
        private int GetExpandNodeCount() {
            int count = 0;
            foreach(TreeNode each in treeView1.Nodes) {
                count += GetSingleNodeCount(each);
            }
           
            return count;
        }
       
        private int GetSingleNodeCount(TreeNode node) {
            int count = 0;
            ++count;
            if(node.IsExpanded) {
                foreach(TreeNode each in node.Nodes) {
                    count += GetSingleNodeCount(each);
                }
            }
           
            return count;
        }

要自动缩放控件,只要将控件的Dock设为Top,并通过改变其Visible属性来缩放