0

我想拥有一个使用Resource.resx的双语网站(英语和德语)我可以成功地将页面的语言更改为德语,但我无法回到英语。这是我的代码:

protected void Page_Load(object sender, EventArgs e)
        {

                Session["Lan"] = DropDownList1.SelectedItem.Value.ToString();


                if (Session["Lan"].ToString() == "de-DE")
                {
                    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de-DE");
                    Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-DE");
                    Label2.Text = Resources.Resource.Here;
                    HyperLink1.Text = Resources.Resource.Signup;
                }

我怎么解决这个问题?

编辑: 我已将 Dropdownbox 的 Autopost 属性设置为 true,并将我的代码块放入ispostback,如下所示:

Session["Lan"] = DropDownList1.SelectedItem.Value.ToString();
            if (Page.IsPostBack)
            {
                if (Session["Lan"].ToString() == "de-DE")
                {
                    Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("de-DE");
                    Thread.CurrentThread.CurrentUICulture = new CultureInfo("de-DE");

                    Label1.Text = Resources.Resource.Quick_routes_offers_the_opportunity_to_manage_and_analyze_the_recorded_routes_The_format_of_your_route_must_be_GPX_format_;
                    Label2.Text = Resources.Resource.Here;
                    HyperLink1.Text = Resources.Resource.Signup;
                }

            }

但我认为如果语言不是“de”我的标签的原文应该出现,为什么这个想法行不通?

4

1 回答 1

0

试试这个,else如果在下面放一个。

    else 
            {
                Thread.CurrentThread.CurrentCulture = CultureInfo.CreateSpecificCulture("en-US");
                Thread.CurrentThread.CurrentUICulture = new CultureInfo("en-US");

                Label1.Text = Resources.Resource.Quick_routes_offers_the_opportunity_to_manage_and_analyze_the_recorded_routes_The_format_of_your_route_must_be_GPX_format_;
                Label2.Text = Resources.Resource.Here;
                HyperLink1.Text = Resources.Resource.Signup;
            }
于 2012-07-08T08:33:16.980 回答