C# 实时监听值的变化

代码:

 1 using System;
 2 namespace Test_Tools
 3 {
 4 
 5     class Program 
 6     {
 7         static void Main(string[] args)
 8         {
 9 
10             MonitorValueChange change = new MonitorValueChange();
11             change.MyValue = 10;
12             change.OnMyValueChanged += Change_OnMyValueChanged;
13             change.MyValue = 10;
14 
15            
16         }
17         public static void Change_OnMyValueChanged(object sender, EventArgs e)
18         {
19             Console.WriteLine("&^%&%^&%^");
20             //要做的操作
21         }
22     }
23     public class MonitorValueChange
24     {
25         private int myValue;
26         public int MyValue
27         {
28             get { return myValue; }
29             set
30             {
31                 if (value != myValue)
32                 {
33                     WhenMyValueChange();
34                 }
35                 myValue = value;
36             }
37         }
38         //定义的委托
39         public delegate void MyValueChanged(object sender, EventArgs e);
40         //与委托相关联的事件
41         public event MyValueChanged OnMyValueChanged;
42         //事件触发函数
43         private void WhenMyValueChange()
44         {
45             if (OnMyValueChanged != null)
46             {
47                 OnMyValueChanged(this, null);
48 
49             }
50         }
51 
52     }
53 }

 

posted @ 2022-03-20 16:17  博二爷  阅读(1262)  评论(0)    收藏  举报