asp.net
  • translate
  • resx
  • 2016-06-12 81 views 1 likes 
    1

    我正在開發一個asp.net網站。我有Resource.resx文件來翻譯網站的術語。每一件事情都沒問題,我想在使用Text ='<%#Resources.Resource。ارسال%>'時將按鈕文本翻譯爲英文和波斯文,因爲它不工作,並且不會顯示文本。請幫助我解決這個問題如何在asp.net中的多語言網站上的按鈕翻譯文本

    <asp:Button ID="Button1" runat="server" Text='<%#Resources.Resource.ارسال %>' Width="94px" CssClass="btn btn-primary" OnClick="Button1_Click" /> 
    

    回答

    1
    1. 右鍵項目 - >添加 - >添加ASP.NET文件夾 - > App_GlobalResources文件
    2. 兩種資源文件添加到該文件夾​​,一個是英語,另一個用於波斯語。我使用的是英文和法文。英文是默認文件,法文資源文件名爲Resource.fr.resx。這個名字很重要,因此請確保您使用波斯文化來命名您的文件。

    Adding App_GlobalResources to project

  • 更改您的按鈕標記來獲取從資源文件中的文本:
  • 像這樣:

    <asp:Button ID="Button1" runat="server" Text="<%$ Resources:Resource, Button1 %>" /> 
    
    1. 覆蓋代碼背後的InitializeCulture()方法,並根據哪種類型用戶正在查看該Web應用程序。

    像這樣:

    public partial class GlobalizationExample : System.Web.UI.Page 
    { 
        protected void Page_Load(object sender, EventArgs e) 
        { 
    
        } 
    
        protected override void InitializeCulture() 
        { 
         //Get the language that the client prefers from the browser 
         string preferredLanguage = Request.UserLanguages[0]; 
    
         //Set the language for the page 
         System.Threading.Thread.CurrentThread.CurrentUICulture = 
          new System.Globalization.CultureInfo(preferredLanguage); 
    
         System.Threading.Thread.CurrentThread.CurrentCulture = 
          System.Globalization.CultureInfo.CreateSpecificCulture(preferredLanguage); 
        } 
    } 
    

    如果上述不幫助你here是在ASP.NET應用全球化不同的方式一個偉大的視頻。

    相關問題