根据文化将图像更改为网站

时间:2010-07-01 21:44:05

标签: asp.net

我正在尝试使用resx文件更改我网站上的ImageButton。我尝试使用meta分配我的ImageButton:ResourceKey =“imgBtnSubmit”。然后在我的resx文件中,我添加了imgBtnSubmit.ImageUrl并将其分配给我的新ImageButton。这对我不起作用。有人可以告诉我,如果我做错了什么或者是否有其他方式可以做到这一点?感谢。

3 个答案:

答案 0 :(得分:2)

您可以编写自定义ExpressionBuilder。

这样您就可以根据cultureinfo影响ImageUrl位置。

看起来像是:

<asp:imagebutton runat="server" id="img1" ImageUrl="<%$ ImageResources: newItem.png %>" />

ImageResources是自定义表达式构建器的名称。我的情况我只需要知道图像的名称。我将我的图像放在/ app_themes / [theme name] / images / [culturecode]中,这样我的表达式构建器就会根据提供的文件名,当前主题和文化代码创建该URL。

答案 1 :(得分:0)

您可能想要考虑的其他事情是让您的按钮具有背景图像(或伪造带有其他具有背景图像的元素的按钮),并覆盖文本。然后,您将能够根据文化更改文本,而无需更改背景图像。

答案 2 :(得分:0)

感谢您的回答,但我无需创建自定义ExpressionBuilder即可使用。有一个内置的'Resources'ExpressionBuilder。这就是我所做的:

<asp:imagebutton runat="server" id="img1" ImageUrl="<%$Resources:ImageName%>"/>

为Default.aspx.resx:

ImageName ----- English_Image_Button.jpg

default.aspx.es.resx:

ImageName ----- Spanish_Image_Button.jpg