private bool Focus() { if (TargetObject != null) { return(TargetObject.Focus(FocusState.Programmatic)); } else { return(FocusManager.TryMoveFocus(FocusNavigationDirection.None, new FindNextElementOptions() { SearchRoot = AssociatedObject } )); } }