C#之WinForm跨线程访问控件实例_C#教程-查字典教程网
C#之WinForm跨线程访问控件实例
C#之WinForm跨线程访问控件实例
发布时间:2016-12-28 来源:查字典编辑
摘要:本文实例讲述了C#中WinForm跨线程访问控件的实现方法,分享给大家供大家参考。具体实现方法如下:1、跨线程访问控件委托和类的定义复制代码...

本文实例讲述了C#中WinForm跨线程访问控件的实现方法,分享给大家供大家参考。

具体实现方法如下:

1、跨线程访问控件委托和类的定义

复制代码 代码如下:using System;

using System.Windows.Forms;

namespace ahwildlife.Utils

{

/// <summary>

/// 跨线程访问控件的委托

/// </summary>

public delegate void InvokeDelegate();

/// <summary>

/// 跨线程访问控件类

/// </summary>

public class InvokeUtil

{

/// <summary>

/// 跨线程访问控件

/// </summary>

/// <param name="ctrl">Form对象</param>

/// <param name="de">委托</param>

public static void Invoke(Control ctrl, Delegate de)

{

if (ctrl.IsHandleCreated)

{

ctrl.BeginInvoke(de);

}

}

}

}

2、用法

在Form1.cs文件的线程方法中:

复制代码 代码如下:InvokeDelegate invokeDelegate = delegate()

{

button4.Enabled = false;

button5.Enabled = false;

button6.Enabled = false;

button7.Enabled = false;

button8.Enabled = false;

};

InvokeUtil.Invoke(this, invokeDelegate);

希望本文所述对大家的C#程序设计有所帮助。

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新C#教程学习
    热门C#教程学习
    编程开发子分类