Окно сообщения с опцией Show Details? - PullRequest
2 голосов
/ 08 апреля 2011

Мне нужно показать MessageBox с опцией Show Details, например, что мы получаем во время обычных исключений Windows.Когда пользователь щелкает опцию показать детали, он должен развернуть и показать коллекцию деталей пользователю.Как этого добиться в формах Windows?

Заранее спасибо

Ответы [ 4 ]

1 голос
/ 08 апреля 2011

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

Диалог - это просто стандартная форма, показанная с использованием метода ShowDialog:

DetailsMessageBox dialog = new DetailsMessageBox();
if (dialog.ShowDialog() == DialogResult.OK)
{
    // Handle me
}

Перед закрытием вашего диалогового окна вы должны установить свойство DialogResult формы, установленное на желаемый результат диалога - вы можете получить кнопки для автоматической установки результата диалога (и закрытия диалога) для вас, когда на них нажимают, установив свойство DialogResult кнопки для достижения желаемого результата.

Вы также должны установить свойства AcceptButton и CancelButton вашего диалогового окна на подходящие кнопки, чтобы диалоговое окно закрывалось, когда пользователь нажимает Escape или Enter.

0 голосов
/ 20 января 2012

Вы можете попробовать API TaskDialog, см. http://msdn.microsoft.com/en-us/library/windows/desktop/bb787471(v=vs.85).aspx

0 голосов
/ 08 апреля 2011

Самый простой способ - создать собственное сообщение. Затем вы можете добавить столько дополнительных функций, сколько захотите, включая ведение журнала событий / ошибок и т. Д.

0 голосов
/ 08 апреля 2011

Эти типы форм доступны только через API, доступные в Windows Vista и выше. Тебе лучше всего создать свою собственную форму. Таким образом, вы можете сделать это именно так, как вы хотите:)

...