我在母版页里用一个Literal控件,显示资源文件的内容,实现网页国际化,但是为什么VS不能调用我的资源文件,代码如下:
<asp:Literal ID="Literal1" runat="server" Text="<li><a href='#'><%$ Resources:MasterResource,ChangePropertise %></a></li>"></asp:Literal>
中间的资源文件怎么也显示不出来。。 如何解决呀?
<%$ Resources:MasterResource,ChangePropertise %>直接放在Text属性里边就可以。外边加几个标签就不行了。
或者还有什么办法可以在改变Literal控件的visible属性为False的时候,也让<li>标签不可见。

解决方案 »

  1.   

    分页配置资源文件或用全局文件,两种方式否可以
    void Application_BeginRequest(Object sender, EventArgs e) 
      { 
      try 
      { 
      if (Request.Cookies["lang"] != null) 
      { 
      System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.CreateSpecificCulture(Request.Cookies["lang"].Value.ToString()); 
      System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo(Request.Cookies["lang"].Value.ToString()); 
      } 
      } 
      catch (Exception) 
      { } 
      } 支持多语言
    参考
    参考
      

  2.   

    我用的是全局文件。下面这个代码,第二个没有问题,第一个我把<li>标签放text属性里了。因为我想设置一个改变Literal控件的visible属性就能改变这个导航栏的效果。要是第二个那样,数据虽然可以显示。但是如果改变visible属性,就会空出来一行。这个全局资源文件的调用代码为什么放在标签里就不能调用了呢?求解答啊 或者有什么别的好办法<asp:Literal ID="Literal1" runat="server" Text="<li><a href='#'><%$ Resources:MasterResource,ChangePropertise %></a></li>"></asp:Literal><li><a href="#"><asp:Label ID="ChangePassword" runat="server" Text="<%$ Resources:MasterResource,ChangePassword %>"></asp:Label></a></li>