网页火灾initializeCulture的DropDownList的母版的selectedIndexChange前 [英] initializeCulture of pages fires before the selectedIndexChange of dropdownlist in masterPage

查看:107
本文介绍了网页火灾initializeCulture的DropDownList的母版的selectedIndexChange前的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个语言选择DropDownList的一个母版

I have a masterpage with a language selector dropdownlist

它使用母版多个子页面,但在子页面(我创建了一个BasePage类,然后我让页面继承)我重写initializeCulture。
像这样的:

it has multiple subpages using the masterpage but, in the subpages (i created a basePage class which i then let the pages inherit from) i override the initializeCulture. like this:

protected override void InitializeCulture()
        {
            String selectedLanguage = Common.SessionManager.Language;

            if (selectedLanguage == "")
            {
                selectedLanguage = ConfigurationManager.AppSettings.Get("defaultLanguage");
            }

            if (selectedLanguage == "")
            {
                selectedLanguage = "nl-BE";
            }

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

            base.InitializeCulture();
        }

这将DropDownList的SelectedIndexChanged事件,我设置了新的语言会话
像这样的:

on the SelectedIndexChanged event of the dropdownlist, i set the new language in the session like this:

    protected void LanguageSelectorSelectedIndexChanged(object sender, EventArgs e)
    {
        string sCulture = LanguageSelector.SelectedValue;
        Common.SessionManager.Language = sCulture;
    }

但initializeCulture有那么已经被解雇了。

but the initializeCulture has then already been fired.

所以我有形式的延迟效果,页面加载与previous语言,并在下次回传的翻译正确。

so i have sort of a delay effect, page loads with previous language, and on the next postback its translated correctly.

我不能再调用initializeCulture,因为我在一个母版和我的子页面的BasePage类的访问权限。

i cannot call the initializeCulture again, because i'm on a masterpage and i have no access to the subpage's basePage class.

任何人有一个想法如何解决呢?

anyone got an idea how to tackle this?

推荐答案

我在这种情况下,解决办法是改变语言后,页面重定向到本身。

My solution in this case is to redirect the page to itself after changing the language.

这篇关于网页火灾initializeCulture的DropDownList的母版的selectedIndexChange前的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆