3

我有一个具有 TableLayoutPanels 的表单,这些表格布局面板在 Resources.resx 文件中生成以下条目,

tableLayoutPanel1.LayoutSettings    <?xml version="1.0" encoding="utf-16"?><TableLayoutSettings><Controls><Control Name="txtOutput" Row="0" RowSpan="1" Column="2" ColumnSpan="4" /><Control Name="lblOutput" Row="0" RowSpan="1" Column="1" ColumnSpan="1" /><Control Name="btnRetry" Row="0" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="btnContinue" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="btnFail_Test" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="btnPass_Test" Row="1" RowSpan="1" Column="0" ColumnSpan="1" /><Control Name="btnTimeOut" Row="1" RowSpan="1" Column="3" ColumnSpan="1" /><Control Name="btnViewLog" Row="1" RowSpan="1" Column="4" ColumnSpan="1" /><Control Name="btnAbort" Row="1" RowSpan="1" Column="5" ColumnSpan="1" /></Controls><Columns Styles="Percent,16.66667,Percent,16.66667,Percent,16.66667,Percent,16.66667,Percent,16.66667,Percent,16.66667,Absolute,20" /><Rows Styles="Percent,58.77193,Percent,41.22807,Absolute,20" /></TableLayoutSettings>

当我尝试构建项目时,出现以下错误,

将文件 C:\MyProject\ProjectName\FormName.resx 转换为 XLIFF 格式失败。消息:编码期间发现不支持的处理指令“?xml”。请从 xml 中删除不受支持的处理指令。

我尝试将表单的本地化切换为“关闭”,这允许我构建,但后来我失去了外语支持。

笔记:

  1. 从 resx 文件中删除 tableLayoutPanel1.LayoutSettings 允许我进行编译,但随后我的 UI 被完全破坏。

  2. 我正在使用多语言应用工具包 v4.0.1605.0

  3. Visual Studio 社区 2015 更新 2

  4. 视窗 7 64 位

  5. .NET4.5

我有什么办法可以解决这个问题并同时使用 tableLayoutPanels 和本地化?

4

1 回答 1

0

我只是删除了 "<?xml version="1.0" encoding="utf-16"?>" 它似乎对我有用。XML 声明在大多数 XML 中是可选的。我看到的最大缺点是我们将编码从 utf-8 切换到了 utf-16。我查看了嵌入的 XML,没有看到任何特殊字符。由于该文件是 utf-8,我认为如果有任何 utf-16,它必须是一个实体。

4年后,它还没有修复。

于 2020-06-19T13:13:16.110 回答