在 MonoMac 中使用 Mono 时的全局对象
如何声明对象的全局实例?
当使用 C# 和 .NET 时,我会这样做:
public static program {
public static Foo MyFoo = new Foo();
static void main() {
MainForm = new MainForm(MyFoo);
}
}
然而,对于 Mono/MonoMac,主函数调用 NSApplication.Main 并且不直接创建任何窗口。如何将 MyFoo 的实例传递到主窗口?
注意:我试图避免在我的窗口/窗口控制器中引用 MainClass,因为这会产生紧密耦合。我想在其他情况下重用窗口类,因此需要松散耦合。
MonoMac 可以实现我想要的功能吗?
谢谢,安迪
How do I declare global instances of objects?
When using C# and .NET I would do something like this:
public static program {
public static Foo MyFoo = new Foo();
static void main() {
MainForm = new MainForm(MyFoo);
}
}
however with Mono/MonoMac the main function calls NSApplication.Main and doesn't directly create any windows. How would I pass an instance of MyFoo to the main window?
Note: I am trying to avoid any references to MainClass in my windows/window controllers as that creates a tight coupling. I want to reuse the window classes in other situations hence the desire for loose coupling.
Is what I want possible with MonoMac?
thanks, Andy
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 单例 ?您的代码将如下所示:
Use a singleton ? Your code would then look like: