2011-04-08 159 views
2

我需要表现出与显示详细信息选项一个MessageBox,像我们在普通窗口的异常得到。当用户点击显示详细信息选项时,它必须展开并向用户显示详细信息的集合。如何在Windows窗体中实现它?带有显示详细信息选项的消息框?

在此先感谢

+0

只需创建新的WinForm与特点,有什么问题吗? – 2011-04-08 07:00:32

+1

有一百万个组件可以为你做到这一点。他们在vista及更高版本上使用任务对话框API,在XP上使用模拟版本。只需搜索.net任务对话框。 – 2011-04-08 07:05:18

+0

看我的答案[这里](http://stackoverflow.com/a/40469355/3314922)。它包含我使用的实现。 – gneri 2016-11-07 16:03:12

回答

0

这些类型的形式只能通过在Windows Vista中可用的API和更高。你最好只创建你自己的表单。这样,你可以把它正是你想怎么吧:)

0

最简单的方法是使自己的消息框。然后,您可以添加尽可能多的附加功能,只要你愿意,包括事件/错误日志等

1

这些对话框不会受到任何API的一部分,所以你需要创建自己的对话框,进行同样的操作。

一个对话是简单地使用ShowDialog方法所示的标准形式:

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

您的对话框关闭,你应该设置形式的DialogResult属性设置为所需的对话框结果出来之前 - 你可以得到按钮自动设置dialoig结果(并关闭对话框)为您它们是由按钮的DialogResult属性设置为所需的结果单击时。

您还应该将对话框的AcceptButtonCancelButton属性设置为合适的按钮,以便在使用按Escape或Enter键时关闭对话框。