代码之家  ›  专栏  ›  技术社区  ›  user2799350

如何重新启动应用程序?

  •  2
  • user2799350  · 技术社区  · 11 年前

    我要更改应用程序的语言。

    Thread.CurrentThread.CurrentCulture = new CultureInfo("fr-FR");
    Thread.CurrentThread.CurrentUICulture = Thread.CurrentThread.CurrentCulture;
    

    但问题是它需要重新启动应用程序。是否可以重新启动应用程序?(或者可以在不重新启动的情况下更改语言吗?)

    2 回复  |  直到 11 年前
        1
  •  4
  •   Tom Verhoeff    11 年前

    强制重新启动应用程序是不可能的,而且更改正在运行的应用程序的语言也相当复杂。我会这样做:

    1. 操作系统区域性的默认值(标准行为)
    2. 如果需要,允许用户更改应用程序中的语言,并确保在app.xaml.cs构造函数中进行重写
    3. 如果用户更改了语言(这种情况并不经常发生),则显示一个弹出窗口,解释需要重新启动应用程序。这是我在一些应用程序中采用的一种方法,用户对该解决方案很满意。它省去了“动态”更改语言的巨大工作量

    祝你好运,让我们知道你最终做了什么!

        2
  •  0
  •   Community CDub    8 年前

    据我所知,在不重新启动的情况下,您无法更改语言,从而避免在您的情况下添加额外的代码。有 example 关于如何在不重新启动的情况下进行操作,但这里的情况变得有点复杂。