MessageBox.Show для Windows Phone 7 - PullRequest
       13

MessageBox.Show для Windows Phone 7

7 голосов
/ 03 января 2011

Мне нужен MessageBox.Show (), но с расширенной функциональностью: во встроенном окне сообщений для Windows Phone 7 не будут отображаться произвольные кнопки, просто ОК или отмена, мне также нужно, например, Да Нет Мне нужен метод Show, который будет возвращаться только тогда, когда пользователь нажимает кнопку. Я попытался сделать свое собственное сообщение как всплывающее окно. Проблема в том, что он асинхронный, как и все в UI-потоке в WP7, и я не могу заблокировать UI-поток, потому что UI-поток также отвечает за обработку событий нажатия кнопки. Я видел пример ChildWindow для WP7, но он также был асинхронным, у меня должен быть метод Show (), который возвращает только когда пользователь нажимает. Какие-либо предложения? Какой-то DoEvents () мог бы мне сильно помочь, но в WP7 такого метода нет: (

Ответы [ 3 ]

6 голосов
/ 03 января 2011

Вы можете использовать XNA's Guide.BeginShowMessageBox () для отображения MessageBox с пользовательскими кнопками. Вот учебник о том, как его использовать.

Обратите внимание, что параметр MessageBoxIcon не выбирает значок в WP7, вместо этого он выбирает звук уведомления при отображении окна сообщения.

EDIT: К сожалению, не прочитал ваше синхронное требование, прежде чем я отправил. Может быть, вы можете установить флаг, чтобы остановить все, что вы хотите запретить запускать, и сбросить его, как только пользователь сделал выбор.

2 голосов
/ 03 января 2011

Я нашел это, когда искал что-то похожее, но завелся просто используя встроенный ящик сообщений.Это, безусловно, даст вам возможность иметь пользовательские кнопки.

Окно пользовательских сообщений Windows Phone 7

1 голос
/ 16 марта 2011

Используйте холст, на котором есть все, что вы хотите. Затем просто используйте свойство видимости, чтобы открыть его ..

...