0

マスターページで使用しました。

<div class="menu_nav">
  <ul>
    <li>
      <asp:HyperLink ID="HyperLink1" runat="server" meta:resourcekey="HyperLink1" NavigateUrl="~/Home.aspx">hello</asp:HyperLink>
    </li>
    <li><a href="AboutUs.aspx"><span>
      <asp:Label ID="lblAboutUs" runat="server" Text="About Us"></asp:Label></span></a>
    </li>
  </ul>
</div>

そして私はこのコードを使用しました:

ResourceManager rm;
    CultureInfo ci;
    private void LoadString(CultureInfo ci)
    {

        lblCompanyName.Text = rm.GetString("siteName", ci);
        lblSlogan.Text = rm.GetString("siteSlogan", ci);

        lblAboutUs.Text = rm.GetString("menuAboutUs", ci);
        HyperLink1.Text = rm.GetString("menuHome", ci);}
     if (Session["cultureID"] =="1")
        {


            Thread.CurrentThread.CurrentCulture = new CultureInfo("en-US");
            rm = new ResourceManager("Resources.Strings",
                     System.Reflection.Assembly.Load("App_GlobalResources"));
            ci = Thread.CurrentThread.CurrentCulture;
            LoadString(ci);}
        else if( Session["cultureID"] =="2")
        {
            Thread.CurrentThread.CurrentCulture = new CultureInfo("ja-JP");
            rm = new ResourceManager("Resources.Strings",
                     System.Reflection.Assembly.Load("App_GlobalResources"));
            ci = Thread.CurrentThread.CurrentCulture;
            LoadString(ci); }

ラベル(ウェブサイト名を表示するためにラベルを使用)のみですべて問題あり<a href>ませんが、メニューを作成するためにアンカー内のハイパーリンクまたはラベルを使用すると、日本語が表示されません(英語の文字で問題ありません)。ページソース(ブラウザ)を見ると、日本語が表示されています。問題は、resxからの日本語データが私のページにレンダリングされていないことです。どうすればこれを解決できますか?

4

1 に答える 1

0

私はあなたのコードをテストしましたが、それは私のために働いています。Web ページに問題がある可能性があります。このタグをページのセクションに追加してみてください。日本語の文字を完全にレンダリングします。

<head runat="server">
    <meta http-equiv="content-type" content="text/html;charset=utf-8">
    <title></title>
</head>
于 2013-04-22T11:30:00.350 に答える