public void ReadValue() { // Update in case the value has been modified externally. // Caveat: affecting Value will raise back BindWrite(). if (bindTarget != null && bindTarget.BindRead != null && !string.IsNullOrEmpty(bindTargetProperty)) { Value = bindTarget.BindRead(bindTargetProperty, Value.GetType()); } }