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
Haben Sie Fragen oder Feedback zu dieser Dokumentation? Bitte geben Sie hier Ihr Feedback ab.