Всплывающее окно из исходного кода в WPF не работает (при изменении размера и переключении окон)

Я хочу добавить всплывающее окно при нажатии кнопки в WPF. Я не хочу добавлять код всплывающего окна в свой XAML. Это должен быть код.

Мой XAML выглядит следующим образом ::

<Window x:Class="Test.Window1"
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      Title="Window1" Height="300" Width="300">
   <Grid>
     <Button x:Name="button1" Click="button1_Click">Button</Button>
   </Grid>
</Window>

В моем файле XAML есть простая кнопка. При нажатии кнопки я пытаюсь выполнить следующий код.

  private void button1_Click(object sender, RoutedEventArgs e)
    {
        Button button = sender as Button;

        Popup codePopup = new Popup();
        TextBlock popupText = new TextBlock();
        popupText.Text = "Popup Text";
        popupText.Background = Brushes.LightBlue;
        popupText.Foreground = Brushes.Blue;
        codePopup.Child = popupText;

        codePopup.PlacementTarget = button;
        codePopup.IsOpen = true;

    }

Но почему всплывающее окно не прикрепляется к окну . Я имею в виду, что всплывающее окно отображается, даже если я переключаю окна. Также, когда я изменяю размер окна , всплывающее окно больше не помещается рядом с кнопкой ??

8
задан GuruC 18 November 2010 в 06:11
поделиться