zoukankan      html  css  js  c++  java
  • C#实现Treeview节点"正在载入..."效果

    代码
     public partial class FrmTreeView : Form
        {
            
    public FrmTreeView()
            {
                InitializeComponent();

            }

            
    private void FrmTreeView_Load(object sender, EventArgs e)
            {
                
    this.treeView1.Nodes.Add(new TreeNode("root"));
                
            }

            
    private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
            {
                
    if ( (e.Node.Tag == null || e.Node.Tag.ToString() == ""&& e.Node.Text != "正在载入...")
                {
                    ThreadStartInfo s 
    = new ThreadStartInfo();

                    s.node 
    = e.Node;

                    s.node.Tag 
    = 1;//已经载入过的就不要载入了

                    
    new System.Threading.Thread(new System.Threading.ThreadStart(s.LoadNode)).Start();

                    e.Node.Nodes.Add(
    "正在载入...");
                
                }
            }
        }
    代码
     public class ThreadStartInfo
        {
            
    public TreeNode node = null;

            
    public void LoadNode()
            {
                System.Threading.Thread.Sleep(
    5000);

                
    string[] str = { "jin""csdn""sina""google""yahoo""nba""fifa" };

                
    this.AddNode(node, str);
            }

            
    delegate void dAddNode(TreeNode node, string[] str);

            
    void AddNode(TreeNode node, string[] str)
            {
                
    if (this.node.TreeView.FindForm().InvokeRequired)//判断是否需要主窗体线程调用
                {
                    
    this.node.TreeView.FindForm().Invoke(new dAddNode(AddNode), new object[] { node, str });//主窗体线程调用
                }
                
    else
                {
                    node.Nodes.Clear();

                    
    foreach (string strNode in str)
                    {
                        node.Nodes.Add(strNode);
                    }
                
                }
            
            }

        }

    转自:http://www.cnblogs.com/zhangtao/articles/1440759.html

  • 相关阅读:
    springcloud 学习笔记
    一文领悟HTTPS密钥为什么这样传输
    静态代码扫描工具PMD参数过程简介与JCommander 以及如何扩展
    静态代码扫描工具PMD分析XML的核心源码解读(从core主入口到子语言解析)
    Jenkins出现SVNException:E175002
    一个第三方登录的流程
    爬虫入门(三)爬取b站搜索页视频分析(动态页面,DBUtils存储)
    09 元素等待机制
    测试观点
    什么是请求
  • 原文地址:https://www.cnblogs.com/johnwonder/p/1673351.html
Copyright © 2011-2022 走看看