# TrackPropertyValue(VisualElement, SerializedProperty, Action<SerializedProperty>)

> Executes the callback when the property value changes. Unity checks properties for changes at regular intervals during the update loop. If no callback is specified, a SerializedPropertyChangeEvent is sent to the target element.

## Definition

* **Type:** Method
* **Namespace:** [UnityEditor.UIElements](/engine/6000.0/script-reference/unityeditor/uielements.md)
* **Assembly:** UnityEditor

```csharp
public static void TrackPropertyValue(this VisualElement element, SerializedProperty property, Action<SerializedProperty> callback = null)
```

### Parameters

**** (\[VisualElement]\(/engine/6000.0/script-reference/unityengine/uielements/visualelement)): VisualElement tracking a property.**** (\[SerializedProperty]\(/engine/6000.0/script-reference/unityeditor/serializedproperty)): The SerializedProperty to track.**** (\[Action\<SerializedProperty>]\(https\://learn.microsoft.com/dotnet/api/system.action)): Invoked when the tracked SerializedProperty value changes.
