【问题标题】:Why isn't my custom view showing up in MonoMac?为什么我的自定义视图没有出现在 MonoMac 中?
【发布时间】:2013-11-07 20:22:34
【问题描述】:
我正在将 Xamarin Studio 与 MonoMac 项目一起使用。目前我正在尝试让自定义视图出现在我的主窗体中,但它似乎不起作用。
这些是我经历的步骤:
- 创建了新的 MonoMac 项目。
- 添加了新的 Cocoa 视图 (TestView.xib)。
- 双击TestView.xib在Xcode中打开并添加了一些
组件,然后关闭 Xcode。
- 双击 MainWindow.xib 到
在 Xcode 中打开。
- 为窗口添加了自定义视图并将类设置为
测试视图。
一切正常,但我的窗口是空白的。
有什么明显的我做错了吗?
谢谢,
艾伦
【问题讨论】:
标签:
c#
macos
mono
xamarin
monomac
【解决方案1】:
这似乎是合乎逻辑的方法,但它不起作用。您不能设计一个 .xib,然后将其直接嵌入到另一个 .xib 中(就像使用 Windows 窗体控件一样)。
为此,您需要:
- 将自定义视图中的插座添加到窗口中
- 在后面的代码中,创建视图实例
- 以编程方式将自定义视图替换为您的新实例,通常在 AwakeFromNib() 中
通常在 Cocoa 中,您会使用 ViewController 来实例化您的测试视图实例,但这不是必需的
this.Window.ContentView.ReplaceSubviewWith(this. myCustomViewPlaceHolder, new MyCustomViewController().View);
您可能会发现此discussion 很有帮助。