Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class MyClass {
- ManualResetEvent mre;
- public MyClass() {
- mre = new ManualResetEvent(false);
- Data = null;
- }
- public object Data { get; set; }
- void DataSet(object sender, EventArgs e) {
- Console.WriteLine("object Data has been set.");
- mre.Set();
- }
- }
- MyClass mc;
- void processA() {
- mc = new MyClass();
- mc.Data = GetDataFromLongProcess();
- }
- private object data;
- public object Data {
- get { return data;}
- set {
- if(value != data) {
- data = value;
- OnDataChanged();
- }
- }
- }
- protected virtual void OnDataChanged() {
- EventHandler handler = DataChanged;
- if(handler != null) handler(this, EventArgs.Empty);
- }
- public event EventHandler DataChanged;
- MyClass mc = ...
- mc.DataChanged += delegate {
- Console.WriteLine("new data! wow!");
- };
- public event Action OnDataChanged;
- protected object _data = null;
- public object Data
- {
- get { return _data; }
- set
- {
- _data = value;
- if(OnDataChanged != null)
- OnDataChanged();
- }
- }
- mc = new MyClass();
- mc.OnDataChanged += delegate() { Console.WriteLine("It changed!"); };
- mc.Data = SomeValue();
- public event SomeDelegateThatTakesIntAsParameter myEvent;
- void SetData(int data)
- {
- if(myEvent!= null)
- myEvent(data)
- }
Add Comment
Please, Sign In to add comment