我有3个图标。当我编译应用程序时,我使用第一个图标 - 主应用程序图标 我在资源方面还有2个其他图标。
当我显示MessageBox.Show(...)时,第一个应用程序图标出现在任务栏中。 我希望能够在某些时候在运行时更改主图标。
答案 0 :(得分:1)
我不认为这是直截了当的,看看这个article它可能会帮助你。
答案 1 :(得分:1)
您可以使用P / Invoke调用Windows MessageBoxIndirect
功能来更改消息框内显示的图标。
答案 2 :(得分:1)
虽然这里已经提到了关于P / Invoke的内容 - 如果您不想编写自己的MessageBox,有一篇关于更改图标http://www.codeproject.com/KB/dialog/MessageBoxIndirectCS.aspx的好文章。
答案 3 :(得分:1)
System.Drawing .Icon ica= new Icon (Application.StartupPath + "\\" + "my_new_icon.ico");
this.Icon = ica; //This is an Active Form
答案 4 :(得分:0)
我不确定您是否可以更改标准MessageBox的图标。您可能必须制作自己的MesageBox。然后它只是改变标准winform的图标。 MSDN和许多可以在Google上找到的网页都有详细记录。
答案 5 :(得分:0)
我很确定标准的MessageBox.Show()方法无法显示自定义图标(您可以在枚举中指定几个不同的图标,但不能在其中添加任意图标),但是如果您有一个普通的.NET表单,只需将'Icon'属性设置为您想要的图像即可。在运行时执行此操作时,可能需要之前和之后的正常挂起/恢复布局调用,或者它们可能不会,我不知道,但在表单上设置属性不应该是一项繁重的工作。