我正在visualstudio2005中翻译一个紧凑的framework2.0windows窗体。为此,我将窗体的语言更改为德语(目标语言),并编辑/调整窗体上的控件大小。这将创建一个资源.de.resx包含预期翻译字符串的文件。
但是,表单上有一个自定义控件,它有一个名为GroupText的属性,该属性也必须翻译。但是,表单设计器拒绝使用此属性的资源文件。每当我在属性编辑器中更改属性时,所有语言的属性都会更改。我检查了resx文件-它们不包含GroupText属性,并且设计器生成的代码也不使用resx文件作为该属性。
有没有一种方法可以为自定义控件启用基于resx的、visualstudio支持的本地化?
编辑:
作为公认答案的补充,下面是让自定义控件的resx文件正常工作所必须做的。
Localizable
属性设置为
true
. 现在,CF不通过通常的括号语法支持这个属性。你不能只写
[Localizable=true]
DesignTimeAttributes.xmta
<?xml version="1.0" encoding="utf-16"?>
<Classes xmlns="http://schemas.microsoft.com/VisualStudio/2004/03/SmartDevices/XMTA.xsd">
<Class Name="MyControl">
<Property Name="MyProperty">
<Localizable>true</Localizable>
</Property>
</Class>
重建包含控件的程序集后,VisualStudio将把属性值放入resx文件中。