在Windows 8中本地化非中断空间



我正在尝试本地化一个Windows 8 Metro风格的应用程序,如MSDN上的指南中所述。到目前为止,这运行得很好,但现在我正在尝试本地化一个包含不间断空格的字符串,该空格出现在XAML文件中(最初是十六进制xml转义字符串:&#x00a0)。仅仅将上面的字符串放入Resources.resw文件是不起作用的,它显示为&x0000。我必须做些什么才能在本地化中获得一个不间断的空间?

amp#00a0是XML字符文字,这意味着<foo>amp#00a0<foo>内部文本等于字符串"\x00a0"。

对您来说,最好的做法可能是动态引用字符串,并执行替换:

var loader = new Windows.ApplicationModel.Resources.ResourceLoader();
var str = loader.GetString('Farewell');
var modstring = str.Replace("&#00a0", "x00a0");
myControl.Text = modstring;

最新更新