我在Mac OS X机器上安装了XCode,MonoMac,Mono和MonoDevelop,我不知道如何成功地将Click事件连接到一个简单的按钮。
首先,我控制 - 将我的按钮拖到头文件中,然后创建了一个插座。现在,我可以从C#代码访问我的按钮(btnHello),这很酷 - 但我如何以及在哪里将事件绑定到它?
我试过
this.btnHello.PerformClick += delegate {
this.Title = "Hello World";
};
但是由于一些“方法组”的原因,MonoDevelop抱怨我无法做到这一点。
我已经研究了好几天了,我找不到任何关于如何做这个的教程,我不想使用示例代码,因为它没有给我如何在将来正确地做到这一点的过程。我试着看MonoTouch入门指南,因为它接近MonoMac,但这也无济于事。
任何帮助都会很棒,特别是关于插座和动作,以及我如何将它们连接到我的元素!谢谢!
答案 0 :(得分:3)
尝试:
this.btnHello.Activated += delegate {
this.Title = "Hello World";
};
此代码应该在Controller中的某个位置,最有可能在AwakeFromNib中。
答案 1 :(得分:2)
大多数问题可能源于这样一个事实:您在网上找到的大多数教程仍然引用旧版本的MonoDevelop,XCode和Interface Builder。
我之前发布过此链接,它显示了如何获得基本项目,包括使用新的XCode 4.2+设置的事件处理程序。
http://tufnelltech.blogspot.ca/2012/01/hello-os-x-from-c-five-steps.html
答案 2 :(得分:0)
NSButton.PerformClick()是一种方法,而不是事件,因此您无法将代理连接到该方法。
我不太熟悉Mac API,不幸地建议如何做你想做的事。