本地化资源不会更改页面中的某些超链接控件

在此输入图像描述

以上是开发中网站的截图…

我们有一个DropdownList控件,并在其SelectedIndexChanged上回发它,然后我们更改站点文化,然后加载相应的资源文件。

DropDownList ASP.NET代码

     

所有网页inheritance的公共类

 using System; using System.Web; using System.Threading; using System.Globalization; public class languagebase : System.Web.UI.Page { protected override void InitializeCulture() { try { string LanguageCode = Request["ctl00$ucMenu$ddlLanguage"]; // Language Drop Down Control in Front End if (!LanguageCode.IsNullOrEmpty()) { setCulture(LanguageCode); // Set Culture language from drop down Request.Cookies["LanguageCode"].Value = LanguageCode; // Update REQUEST Cookie language from drop down SetCookies(LanguageCode); // Set Cookie language from drop down } } catch(Exception ex) { setCulture("en-US"); // Set default language Request.Cookies["LanguageCode"].Value = "en-US"; // Update REQUEST Cookie language to default SetCookies("en-US"); // Set default language } base.InitializeCulture(); } private static void setCulture(string LanguageValue) { Thread.CurrentThread.CurrentUICulture = new CultureInfo(LanguageValue); Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture(LanguageValue); } public void SetCookies(string strLanguage) { System.Web.HttpContext.Current.Response.Cookies["LanguageCode"].Value = strLanguage; System.Web.HttpContext.Current.Response.Cookies["LanguageCode"].Expires = DateTime.Now.AddDays(15); } } 

扩展方法(仅供参考)

 public static Boolean IsNullOrEmpty(this String original) { return string.IsNullOrEmpty(original); } 

示例控制未加载本地化资源的控件

 
  • 手头的问题

    在这里,如果我从浏览器的地址栏重新加载页面,则可以正确加载资源。 我只是想象某些控件是否有可能拥有英语资源,有些人在转换文化时有一些古老的意大利资源?

    我希望我已经解释得很好。

    我将HyperLink控件更改为以下语法,瞧! 它现在正在运作。

     
  • <%= GetLocalResourceObject("hlnkMyProperties")%>