0

我有一个 ASP.NET 多语言应用程序,其中包含 3 个用于印地语-英语-西班牙语的本地资源。

根据浏览器上选择的主要语言,所有“xxxxResource1.Text”和“xxxxResource1.ToolTip”的定义都可以正常工作。

我的问题是,是否有办法处理同一个本地资源文件中控件的大小,我问这个是因为,正如您所想象的,一个单词的翻译可以比英文版本包含更少或更多的字符。因此,如果以另一种语言查看应用程序,我想对网格列、文本框、标签等进行一些调整。

我不想通过不定义按钮的宽度来打开所有内容,以便它可以添加到显示在其上的文本,而是希望能够在需要时指定 % 或 px 值。

如果本地资源无法处理有关控件的那种信息,那么根据语言指定控件大小的好方法是什么?

PD。实际上,当我第一次尝试在本地资源中设置这些值时,我的第一个想法是使用“xxxxResource1.Width”但没有用

提前感谢您对此的任何提示。问候!

4

1 回答 1

1

如果您使用 meta:resourcekey 属性,您可以将控件的属性绑定到资源,这些资源将在呈现时自动应用于控件。

嗯,有点。

它仅适用于字符串属性。所以它适用于TextTooltipCssClass。但是Widthis 不是字符串(它是Unit,不管它是什么)并且Style,信不信由你,也不是字符串——它是一种字典对象。

我的建议是为各种宽度定义一些 CSS 类并将它们与文本一起应用。

示例按钮标记:

<asp:Button ID="Button1" runat="server" meta:resourcekey="Button1Resource1" Text="This actually gets ignored"  />

回复:

<data name="Button1Resource1.Text" xml:space="preserve">
    <value>Localized text goes here</value>
</data>
<data name="Button1Resource1.CssClass" xml:space="preserve">
    <value>Width120</value>
</data>

CSS:

.Width120 { width: 120px }

不理想,但足够简单。可能有十几个 CSS 类,你可以覆盖很大范围的宽度可能性。

于 2017-03-01T02:32:12.323 回答