IUAVariable.VariableChange
Dieses Ereignis tritt ein, wenn sich der Wert der Projektvariable ändert, auf die das C#-Objekt
IUAVariable
verweist.event EventHandler<VariableChangeEventArgs> VariableChange;
WICHTIG:
Wenn die Projektvariable auf eine Feldvariable verweist, wird das Ereignis nur dann generiert, wenn die Projektvariable mit dem Feld durch ein
RemoteVariableSynchronizer
-Objekt synchronisiert bleibt, es sei denn, eine Verknüpfung mit den folgenden Entitäten ist vorhanden:- Tag-Variable aus einem frafischen Objekt
- Datenlogger-Objekt
- Alarm
- Rezeptschema-Objekt
In einem solchen Szenario können Sie in einer NetLogic die Wertänderungsmethode direkt über die verknüpfte Tag-Variable abonnieren.
Ereignishandler
Mit dem Ereignishandler
VariableChange
können Sie das gleichnamige Ereignis einer Methode abonnieren.public delegate void VariableChange(object sender, VariableChangeEventArgs e);
Argumente des Ereignishandlers
- sender(object)
- Ein C#-Objekt, das dem Objekt des ursprünglichen Projekts des Ereignisses entspricht.
- e(VariableChangeEventArgs)
- Ein C#-Objekt, das die folgenden Eigenschaften enthält:
- variable(IUAVariable)
- Die Projektvariable, die das Ereignis erzeugt hat.
- newValue(UAValue)
- Der neue Wert der Variable.
- oldValue(UAValue)
- Der vorherige Wert der Variable.
- indexes(uint[])
- Nur für Arrays:Die Indizes der Array-Zellen, in denen sich der Wert geändert hat.TIPP: Die Eigenschaft ist leer, wenn sich der Wert in jeder Zelle ändert oder die Projektvariable skalar ist.
Beispiel
Die Methode
Variable1_VariableChange
wird jedes Mal dann ausgeführt, wenn sich der Wert der Projektvariable Variable1
ändert.public override void Start() { var variable1 = Project.Current.GetVariable("Model/Variable1"); variable1.VariableChange += Variable1_VariableChange; } private void Variable1_VariableChange(object sender, VariableChangeEventArgs e) { var label1 = Owner.Get<Label>("Label1"); label1.Text = "Value of " + e.Variable.BrowseName + " changed from " + e.OldValue + " to " + e.NewValue; }
Rückmeldung geben