Entwickler-Ecke

C# - Die Sprache - Bei Änderung einer Variablen Event auslösen


Bohnsopp - Do 03.01.08 11:34
Titel: Bei Änderung einer Variablen Event auslösen
Hallo,

ist es möglich bei der Änderung eines Wertes einer Variablen ein Event auszulösen.
Ich stelle mir das so vor, ich ändere eine globale Variable int x = 10 in einem Teil meines Programmes und dann wird ein Event ausgelöst. Das GUI wird von diesem Event angestossen und aktualisiert die Anzeige?


UGrohne - Do 03.01.08 11:49

Das geht am Besten mit einem Property, aber dazu musst Du eine weitere Deklaration vornehmen:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
public class Klasse
{
  private int meinInt;
  public int MeinInt
  {
    get {return meinInt;}
    set 
    {
      meinInt = value;
      //Noch was machen
    }
  }
}

In der Set-Methode kannst Du jetzt auf Änderungen des Properties reagieren, Du kannst sogar mit dem alten Wert vergleichen, da dieser ja in der privaten Variable meinInt steht. Du musst nur darauf achten, dass Du nicht meinInt = 1;, sondern MeinInt = 1; verwendest, da ja nur dsa Property die Set-Methode beinhaltet.