关闭

c# winform 工作线程访问修改界面线程

标签: winform工作c#wpfnull
709人阅读 评论(0) 收藏 举报
分类:

vs2005 中,工作线程 操作 界面的线程的时候,一般会 报个错误,叫 么子 工作线程不能够修改主线程什么的。解决方法参考如下:

 #region 重新加载树图
        /// <summary>
        /// 重新加载树图
        /// </summary>
        private void RedrawTree()
        {
            if (treeView1.InvokeRequired)
            {
                treeView1.Invoke(new MethodInvoker(RedrawTree));
                return;
            }
             //ToDo 对界面控件的修改

            }
        }

还有种:

Invoke(new MethodInvoker(BeginLoad), null);//适合没有参数的函数

还有种,是用事件

  #region 设置节点的数据
        delegate void SetNodeValuesDelegate(TreeNode node, TreeItem item);
        /// <summary>
        /// 设置节点的数据
        /// </summary>
        /// <param name="node"></param>
        /// <param name="item"></param>
        private void SetNodeValues(TreeNode node, TreeItem item)
        {
            if (treeView1.InvokeRequired)
            {
                treeView1.Invoke(new SetNodeValuesDelegate(SetNodeValues), node, item);
                return;
            }
// ToDo 对界面控件的修改         

        }

一些原理文章,参考:

http://tag.csdn.net/tag/invokerequired/1.html

http://blog.csdn.net/Depraved_Survival/archive/2007/09/03/1770950.aspx

http://www.yesky.com/20030225/1653758.shtml

http://www.x2blog.cn/jinhong618/?tid=22389

 

以下是wpf中遇到的问题:

首先,参考文章:http://www.cnblogs.com/zhouyinhui/archive/2007/09/16/894719.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:68694次
    • 积分:1119
    • 等级:
    • 排名:千里之外
    • 原创:38篇
    • 转载:7篇
    • 译文:0篇
    • 评论:17条
    最新评论
    wpf文章