运行时未以派生的 Windows 窗体显示的图标

本文关键字:窗体 显示 图标 Windows 运行时 派生 | 更新日期: 2023-09-27 18:31:15

>我有一个 C# 应用程序,其中一个窗体图标在设计器中可见,但在运行时恢复为默认图标。所讨论的表单是派生形式,没有自己的 .designer.cs 文件,并且派生形式.cs文件为空。窗体图标在设计器中正确显示,但在运行时缺少该图标。

派生窗体与基本窗体位于不同的项目中。基本窗体图标是通过设计器添加的,并且未对基本 .designer.cs 文件进行任何修改。

知道是什么原因造成的吗?

运行时未以派生的 Windows 窗体显示的图标

在胡

思乱想了一会儿之后,我认为我的问题与VS中的此错误有关:https://connect.microsoft.com/VisualStudio/feedback/details/106264/mdi-form-icon-formborderstyle-windowstate-maximized#tabs

我通过将 Icon 重新添加到派生表单(使用设计器)来解决我的问题,然后还必须添加具有以下内容的_Load处理程序

System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(MyForm));
this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));

做这项工作,虽然我不喜欢黑客变通办法!