1

我正在制作一个 Windows CE 应用程序,用户可以在其中更改运行时的 GUI 语言。我在表单的 Load 事件中实现了自己的翻译逻辑。

现在,我想在用户更改语言时更新所有打开的表单。有没有办法(在 Compact Framework 中!!)检索应用程序的所有打开形式?

4

1 回答 1

3

您可以创建一个用于实例化所有表单的 FormManager 类。这将使经理有机会通过侦听它们的 Close 事件来跟踪这些表单的生命周期,并在它们使用公共接口(比如使用 OnUiLanguageChanged 方法的接口)时集体调用它们的方法。

或者,您可以在应用程序中创建一个对象,该对象公开每个 Form 可以订阅的事件。这样,您就不需要知道哪些表单是打开的。Intsead 所有打开的表单只要打开,就会监听 UiLanguageChanged 事件,如果他们收到它,他们可以适当地更新自己。

于 2012-04-23T14:26:01.133 回答