Hello, As stated here (http://www.monobjc.net/index.php?page=events-and-delegates), there may be some problems with some classes as the Objective-C runtime may perform aggressive caching on delegate methods.
I am still searching a way to accommodate with this caching while preserving the flexibility of the .NET event handlers... Regards, Laurent Etiemble. 2008/10/16 Miguel De Buf <[EMAIL PROTECTED]>: > It works if I set the delegate in interface builder for the window to > MyWindow, and if I modify my code to : > > using System; > using System.Collections.Generic; > using System.Text; > > using Monobjc; > using Monobjc.Cocoa; > > namespace windows_events > { > [ObjectiveCClass] > public class MyWindow : NSObject > { > public MyWindow() : base() { } > public MyWindow(IntPtr native_object) : base(native_object) { } > > [ObjectiveCMessage("awakeFromNib")] > public void awakeFromNib() > { > Console.WriteLine(this.GetType().ToString() + " : awakeFromNib"); > } > > [ObjectiveCMessage("windowWillClose:")] > public void windowWillClose(NSNotification notification) > { > Console.WriteLine("window closes"); > } > } > } > > > Cheers, > Miguel > > > Miguel De Buf wrote: >> >> Hi, >> >> I try to catch a window close event in my controller class, but the >> eventhandler never gets executed. This is my code : >> >> using System; >> using System.Collections.Generic; >> using System.Text; >> >> using Monobjc; >> using Monobjc.Cocoa; >> >> namespace windows_events >> { >> [ObjectiveCClass] >> public class MyWindow : NSWindow >> { >> public MyWindow() : base() { } >> public MyWindow(IntPtr native_object) : base(native_object) { } >> >> [ObjectiveCMessage("awakeFromNib")] >> public void awakeFromNib() >> { >> Console.WriteLine(this.GetType().ToString() + " : >> awakeFromNib"); >> this.WindowWillClose += new >> WindowWillCloseEventHandler(MyWindow_WindowWillClose); >> } >> >> void MyWindow_WindowWillClose(NSNotification notification) >> { >> Console.WriteLine("window closes"); >> } >> } >> } >> >> The documentation says, just add an event handler. So I subclassed from >> NSWindow and just added an event handler, but it never gets executed. >> >> Why ? >> Many thanks, >> Miguel >> >> > > >