1

我有奇怪的问题,没想到。

我有带有用户控件的自定义 dll(用于 WinForms),在 Windows 7 中使用 .NET4 VS2010 构建。

此用户控件具有类 System.Text.Encoding 的公共属性。

我为它编写了自己的 TypeConverter,以便在设计时从属性网格中选择编码。

在 Win8 下出现问题(Win7 - 没有错误)。

在 Win8 我有默认编码西欧(1252)。因此,当我尝试构建最简单的 winforms 应用程序时(只有表单和我的 dll 中的用户控件)

我在 Form1.resx 的标题中收到构建错误消息:

Resx 文件无效。在第 135 行,位置 5 处输入数据,无法加载,因为它在构建过程中抛出了以下异常:No data is available for encoding 1252。

如果我在构建之前选择另一种编码也没关系,我再次收到相同的消息。

即使我从列表中删除了 1252,每当使用编码类时更改为 UTF8,我仍然收到相同的消息。

您可以提出什么解决方法?我希望该属性是公开的,不想删除它,并且希望保存选择的编码是 resx 或以任何方式。

在Win7我没有这样的问题,没想到在Win8有它。

谢谢

4

0 回答 0