码迷,mamicode.com
首页 > Windows程序 > 详细

C# 委托Delegate的使用 笔记

时间:2017-11-08 17:50:54      阅读:289      评论:0      收藏:0      [点我收藏+]

标签:笔记   catch   属性   nbsp   pre   stat   线程   ram   str   

使用delegate总是一头雾水,记录一下笔记,备忘。

主要用于线程间操作UI上的控件,以便使用。或者是大家统一操作入口使用。

技术分享
 1 using System.Windows.Forms;
 2 
 3 namespace System.Delegate
 4 {
 5    public static class UIDelegate
 6     {
 7         //------------------
 8         public  delegate void myDelegateW(Control str, string s);
 9         public  delegate string myDelegateR(Control str);
10         //------------------
11 
12         /// <summary>
13         /// 可以实现对带有Text属性的标准控件进行写操作
14         /// </summary>
15         /// <param name="ctr"></param>
16         /// <param name="str"></param>
17         public static void writeUIControl(Control ctr, string str)
18         {
19             if (ctr.InvokeRequired)
20             {
21                 myDelegateW mydelegate = new myDelegateW(writeUIControl);
22                 ctr.Invoke(mydelegate, new object[] { ctr, str });
23             }
24             else
25             {
26                 try
27                 {
28                     ctr.Text = str;
29                 }
30                 catch { }
31             }
32         }
33         public static string readUIControl(Control ctr)
34         {
35             string ret = string.Empty;
36             if (ctr.InvokeRequired)
37             {
38                 myDelegateR mydelegate = new myDelegateR(readUIControl);
39                 ctr.Invoke(mydelegate, new object[] { ctr });
40             }
41             else
42             {
43                 try
44                 {
45                     ret = ctr.Text;
46                 }
47                 catch { }
48             }
49             return ret;
50         }
51     }
52 }
View Code

 

C# 委托Delegate的使用 笔记

标签:笔记   catch   属性   nbsp   pre   stat   线程   ram   str   

原文地址:http://www.cnblogs.com/ufk119/p/7804352.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!