protected override void PageHead_PageHeadEvent(object sender, PageHeadEventArgs e)
        {
            base.PageHead_PageHeadEvent(sender, e);

            switch (e.Code)
            {
            //切换主题
            case 100:
                ThemeInfo themeInfo = e.Data as ThemeInfo;
                if (themeInfo != null)
                {
                    ThemeInfo = themeInfo;
                    UMPApp.Session.ThemeInfo = themeInfo;
                    UMPApp.Session.ThemeName = themeInfo.Name;
                    ChangeTheme();
                    SendThemeChangeMessage();
                }
                break;

            //切换语言
            case 110:
                LangTypeInfo langType = e.Data as LangTypeInfo;
                if (langType != null)
                {
                    LangTypeInfo = langType;
                    UMPApp.Session.LangTypeInfo = langType;
                    UMPApp.Session.LangTypeID   = langType.LangID;
                    MyWaiter.Visibility         = Visibility.Visible;
                    _mWorker                     = new BackgroundWorker();
                    _mWorker.DoWork             += (s, de) => UMPApp.InitAllLanguageInfos();
                    _mWorker.RunWorkerCompleted += (s, re) =>
                    {
                        _mWorker.Dispose();
                        MyWaiter.Visibility = Visibility.Hidden;
                        ChangeLanguage();
                        PopupCreateTest.ChangeLanguage();
                        SendLanguageChangeMessage();
                    };
                    _mWorker.RunWorkerAsync();
                }
                break;
            }
        }
        protected override void App_NetPipeEvent(WebRequest webRequest)
        {
            base.App_NetPipeEvent(webRequest);

            Dispatcher.Invoke(new Action(() =>
            {
                try
                {
                    var code    = webRequest.Code;
                    var strData = webRequest.Data;
                    switch (code)
                    {
                    case (int)RequestCode.SCLanguageChange:
                        LangTypeInfo langTypeInfo = UMPApp.Session.SupportLangTypes.FirstOrDefault(l => l.LangID.ToString() == strData);
                        if (langTypeInfo != null)
                        {
                            LangTypeInfo = langTypeInfo;
                            UMPApp.Session.LangTypeInfo = langTypeInfo;
                            UMPApp.Session.LangTypeID   = langTypeInfo.LangID;
                            if (MyWaiter != null)
                            {
                                MyWaiter.Visibility = Visibility.Visible;
                            }
                            _mWorker                     = new BackgroundWorker();
                            _mWorker.DoWork             += (s, de) => UMPApp.InitAllLanguageInfos();
                            _mWorker.RunWorkerCompleted += (s, re) =>
                            {
                                _mWorker.Dispose();
                                if (MyWaiter != null)
                                {
                                    MyWaiter.Visibility = Visibility.Hidden;
                                }
                                if (PopupCreateTest != null)
                                {
                                    PopupCreateTest.ChangeLanguage();
                                }
                                if (PageHead != null)
                                {
                                    PageHead.SessionInfo = UMPApp.Session;
                                    PageHead.InitInfo();
                                }
                            };
                            _mWorker.RunWorkerAsync();
                        }
                        break;

                    case (int)RequestCode.SCThemeChange:
                        ThemeInfo themeInfo = UMPApp.Session.SupportThemes.FirstOrDefault(t => t.Name == strData);
                        if (themeInfo != null)
                        {
                            ThemeInfo = themeInfo;
                            UMPApp.Session.ThemeInfo = themeInfo;
                            UMPApp.Session.ThemeName = themeInfo.Name;
                            ChangeTheme();
                            PageHead.SessionInfo = UMPApp.Session;
                            PageHead.InitInfo();
                        }
                        break;
                    }
                }
                catch (Exception ex)
                {
                    UMPApp.ShowExceptionMessage(ex.Message);
                }
            }));
        }