0

変更されたカルチャ値を取得できません。drowdownlist があります。ドロップダウン値を変更した後、私のカルチャは変更されます。しかし、毎回英語のカルチャ値を取得しています。カルチャの変更に応じて値を取得する方法を教えてください。

以下は私のコードです:

protected void ddlclick_SelectedIndexChanged(object sender, EventArgs e)
    {
        Session["CurrentUI"] = "pa-IN";
        Response.Redirect(Request.Url.OriginalString);
    }

protected void Page_Load(object sender, EventArgs e)
    {

        if (Session["CurrentUI"] != null)
        {
            String selectedLanguage = (string)Session["CurrentUI"];
            UICulture = selectedLanguage;
            Culture = selectedLanguage;

            Thread.CurrentThread.CurrentCulture =
                CultureInfo.CreateSpecificCulture(selectedLanguage);
            Thread.CurrentThread.CurrentUICulture = new
                CultureInfo(selectedLanguage);
        }

        base.InitializeCulture();

         if (Thread.CurrentThread.CurrentCulture.ToString() == "pa-IN")
        {
            string ind1 =(string)ResourceDLL.abc.company.company1.Name;


            lblmsg.Text = ind1;
        }
   }
4

1 に答える 1

0

プログラムで変更するには、Web ページの InitializeCulture() をオーバーライドする必要があります。

 protected override void InitializeCulture()
    {
      if (Session["CurrentUI"] != null)
        {
            String selectedLanguage = (string)Session["CurrentUI"];
            UICulture = selectedLanguage;
            Culture = selectedLanguage;

            Thread.CurrentThread.CurrentCulture =
                CultureInfo.CreateSpecificCulture(selectedLanguage);
            Thread.CurrentThread.CurrentUICulture = new
                CultureInfo(selectedLanguage);
        }

        base.InitializeCulture();

         if (Thread.CurrentThread.CurrentCulture.ToString() == "pa-IN")
        {
            string ind1 =(string)ResourceDLL.abc.company.company1.Name;


            lblmsg.Text = ind1;
        }
    }
于 2013-09-12T06:59:44.677 に答える