紧凑框架 - 获取所有开放表格

时间:2012-04-23 10:13:29

标签: c# forms compact-framework windows-ce

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

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

1 个答案:

答案 0 :(得分:3)

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

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