public FindWindow(Window owner, TabControl?pagesTabControl, TextBox?streamTextBox, Action callOwnerWhenClosing)
        {
            Owner = owner;
            this.pagesTabControl      = pagesTabControl;
            this.streamTextBox        = streamTextBox;
            this.callOwnerWhenClosing = callOwnerWhenClosing;
            Left = Owner.Left + Owner.ActualWidth * .35;
            Top  = Owner.Top + Owner.ActualHeight * 0.1;

            InitializeComponent();

            if (pagesTabControl is null)
            {
                searchedTextBox  = streamTextBox !;
                TextTextbox.Text = searchedTextBox.SelectedText;
            }
            else
            {
                var selectedTabItem = ((TabItem)pagesTabControl.SelectedItem).Content;
                if (selectedTabItem is TextBox isTextBox)
                {
                    searchedTextBox  = isTextBox;
                    TextTextbox.Text = searchedTextBox.SelectedText;
                }
                else if (selectedTabItem is RichTextBox isRichTextBox)
                {
                    searchedRichTextBox = isRichTextBox;
                    TextTextbox.Text    = searchedRichTextBox.Selection.Text;
                }
            }
            TextTextbox.Select(TextTextbox.Text.Length, 0);
            NextButton.IsEnabled     = true;
            PreviousButton.IsEnabled = true;

            PreviewKeyUp            += findWindow_PreviewKeyUp;
            Loaded                  += findWindow_Loaded;
            TextTextbox.TextChanged += textTextbox_TextChanged;
            NextButton.Click        += nextButton_Click;
            PreviousButton.Click    += previousButton_Click;
            Closed                  += findWindow_Closed;
        }
 private void findWindow_Loaded(object sender, RoutedEventArgs e)
 {
     TextTextbox.Focus();
 }