private void ShowFindAndReplaceControl(bool showReplaceBar) { if (FindAndReplacePlaceholder == null) { this.FindName("FindAndReplacePlaceholder"); // Lazy loading } var findAndReplace = (FindAndReplaceControl)FindAndReplacePlaceholder.Content; if (findAndReplace == null) { return; } FindAndReplacePlaceholder.Height = findAndReplace.GetHeight(showReplaceBar); findAndReplace.ShowReplaceBar(showReplaceBar); if (FindAndReplacePlaceholder.Visibility == Visibility.Collapsed) { FindAndReplacePlaceholder.Show(); } Task.Factory.StartNew( () => Dispatcher.RunAsync(CoreDispatcherPriority.Low, () => findAndReplace.Focus())); }
private void TextEditor_Unloaded(object sender, RoutedEventArgs e) { if (!(sender is TextEditor textEditor)) { return; } textEditor.TextChanging -= TextEditor_TextChanging; textEditor.SelectionChanged -= TextEditor_SelectionChanged; if (Sets.Items?.Count == 0) { Application.Current.Exit(); } if (FindAndReplacePlaceholder.Visibility == Visibility.Visible) { FindAndReplacePlaceholder.Dismiss(); } }
private void FindAndReplaceControl_OnDismissKeyDown(object sender, RoutedEventArgs e) { FindAndReplacePlaceholder.Dismiss(); FocusOnSelectedTextEditor(); }