Как отслеживать изменения переменной? - C#
Формулировка задачи:
Добрый день!
Есть глобальная переменная int x = 0;
Подскажите, как отслеживать изменения переменной? То есть создать событие, реагирующее на изменение числа.
Решение задачи: «Как отслеживать изменения переменной?»
textual
Листинг программы
using System; namespace Test1 { public class EventArgs<T> : EventArgs { public EventArgs(T dataObject) { DataObject = dataObject; } public T DataObject { get; set; } } public class Singleton<T> { protected Singleton() { } private sealed class SingletonCreator<T> { private static readonly Singleton<T> instance = new Singleton<T>(); public static Singleton<T> Instance { get { return instance; } } } public static Singleton<T> Instance { get { return SingletonCreator<T>.Instance; } } protected T _value; public T Value { get { return _value; } set { _value = value; ValueChanged(this, new EventArgs<T>(_value)); } } public event EventHandler<EventArgs<T>> ValueChanged = delegate { }; } class Program { static void Main(string[] args) { Singleton<int>.Instance.ValueChanged += Instance_ValueChanged; Singleton<int>.Instance.Value = 10; Singleton<int>.Instance.ValueChanged -= Instance_ValueChanged; } static void Instance_ValueChanged(object sender, EventArgs<int> e) { Console.WriteLine("Value Changed: {0}", e.DataObject); } } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д