/// <summary> /// IsReadOnlyProperty property changed handler. /// </summary> /// <param name="oldValue">Old value.</param> /// <param name="newValue">New value.</param> protected virtual void OnIsReadOnlyChanged(bool oldValue, bool newValue) { if (!_settingIsReadOnly) { _settingIsReadOnly = true; this.IsReadOnly = oldValue; throw new InvalidOperationException(string.Format(CultureInfo.CurrentUICulture, Properties.Resources.InvalidAttemptToChangeReadOnlyProperty, "IsReadOnly")); } else { _interactionHelper.OnIsReadOnlyChanged(newValue); } }