Добавить настраиваемые кнопки в существующий MessageBox - PullRequest
4 голосов
/ 30 июня 2009

Как добавить пользовательские кнопки к существующему MessageBox в WPF? Помимо обычных кнопок «ОК» и «Отмена», мне нужно добавить еще 3 кнопки, а также обрабатывать их события.

1 Ответ

8 голосов
/ 30 июня 2009

Краткий ответ: Нет, это невозможно, вам нужно написать новое окно.

Длинный ответ: класс MessageBox использует функцию Win32 MessageBox (или, возможно, MessageBoxEx), эта функция не поддерживает расширение окна сообщения.

Можно изменить окно сообщения после его открытия, но:

  1. Много работы

  2. Не поддерживается

  3. Вы должны сделать это, используя Win32 напрямую, окно сообщения не WPF или даже WinForms.

В целом, написать окно с одним TextBlock, одним изображением и пятью кнопками меньше, чем возиться с внутренними подробностями реализации кода MessageBox.

...