Всплывающее окно WPF
Я хочу, чтобы пользователь мог выбрать свои параметры после нажатия кнопки. Например, покажут две кнопки: "Restart Now" и "Restart Later" в модальном всплывающем окне. Использование MessageBox
для меня не является решением, так как оно не позволяет пользователю изменять название кнопок.
Ответы
Ответ 1
Вам нужно создать новый класс Window. Вы можете спроектировать это так, как хотите. Вы можете создать и показать окно модально следующим образом:
MyWindow popup = new MyWindow();
popup.ShowDialog();
Вы можете добавить настраиваемое свойство для своего значения результата или если у вас есть только два возможных результата (возможно, неопределенный, что будет null
), вы можете установить окно DialogResult
до его закрытия, а затем проверить его (это значение, возвращаемое ShowDialog()
).
Ответ 2
В WPF есть элемент управления с именем Popup.
Popup myPopup = new Popup();
//(...)
myPopup.IsOpen = true;
Ответ 3
XAML
<Popup Name="myPopup">
<TextBlock Name="myPopupText"
Background="LightBlue"
Foreground="Blue">
Popup Text
</TextBlock>
</Popup>
С#
Popup codePopup = new Popup();
TextBlock popupText = new TextBlock();
popupText.Text = "Popup Text";
popupText.Background = Brushes.LightBlue;
popupText.Foreground = Brushes.Blue;
codePopup.Child = popupText;
Вы можете найти более подробную информацию о Popup Control из документации MSDN.
Документация MSDN по управлению всплывающими окнами
Ответ 4
Просто покажите новое окно с двумя кнопками. Добавьте свойство, чтобы содержать результат пользователя.