我有一个.NET 3.5 MDI WinForms应用程序.
我设置了一个子窗体的Icon属性,该图标正好显示在窗体的左上角.然后我最大化了子表单,图标仍然可以.
随着孩子的形式仍然最大化,我打开另一个子窗口,自动出现最大化.此表单的图标不是Icon属性中的图标,而是默认的.NET图标(带有蓝色,红色和黄色方格的图标).但是,如果我调整MDI父表单的大小,图标将自动重置并正常显示.
有没有人有解决方法或知道为什么会发生这种情况?
解决方法
对了,我找到了一个解决方案
解决方法是在子表单的加载事件上再次设置图标,如下所示:
private void StatsForm_Load(object sender,EventArgs e) { //bug that means you have to set the desired icon again otherwise it reverts to default when child form is maximised Icon = new System.Drawing.Icon("research.ico"); }
这意味着您必须首先将有问题的图标文件添加到VS项目/解决方案中,并将其设置为“始终复制”,以便在构建解决方案时复制.
HTH哲