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

原创 2007年09月13日 14:57:00

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

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

C#Winform中多线程访问控件问题,可帮助解决“线程间操作无效: 从不是创建控件“FrmUpdate”的线程访问它。”异常

我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题。然而我们并不能用传统方法来做这个问题,下面我将详细的介绍。    首先来看传统方法:        ...

MFC 工作线程和界面线程

MFC多线程的创建 1.MFC多线程简介 MFC对多线程进行了一层简单的封装,在Visual C++中每个线程都是从CWinThread类继承而来的。每一个应用程序的执行都有一个主线程,这...

MFC多线程的创建,包括工作线程和用户界面线程

MFC多线程的创建 1.MFC多线程简介 MFC对多线程进行了一层简单的封装,在Visual C++中每个线程都是从CWinThread类继承而来的。每一个应用程序的执行都有一个主线程,这...

MFC多线程的创建,包括工作线程和用户界面线程

原文转自:http://blog.csdn.net/cbnotes/article/details/8465212 MFC多线程的创建 1.MFC多线程简介 MFC对多线程进...

[MFC]界面线程和工作线程

1.前言MFC提供了2中线程的实现方式,一种是界面线程,可以处理来自系统的消息,比如窗口的点击事件;一种是工作线程,用于处理繁琐的计算或者长时间的任务,例如后台打印,计算等。2.界面线程界限线程的创建...

MFC多线程的创建,包括工作线程和用户界面线程

MFC多线程的创建 1.MFC多线程简介 MFC对多线程进行了一层简单的封装,在Visual C++中每个线程都是从CWinThread类继承而来的。每一个应用程序的执行都有一个主线程,这个主线程...

VS2010/MFC入门编程十七(多线程的创建,包括工作线程和用户界面线程)

MFC多线程的创建 1.MFC多线程简介 MFC对多线程进行了一层简单的封装,在Visual C++中每个线程都是从CWinThread类继承而来的。每一个应用程序的执行都有一个主线程...

Winform跨线程打印日志到TextBox(使用委托跨线程访问控件)

class Test { public delegate void ThreadStartDelegate(System.Windows.Forms.RichTextBox r...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)