<div><div>Here is a test case that shows the same issue I have with an Obj-C object.  In my real app the MyViewController object is created in obj-c.  But this test case shows the same issue.</div><div><br></div><div>using System;</div>
<div>using MonoMac.Foundation;</div><div>using MonoMac.AppKit;</div><div>using MonoMac.ObjCRuntime;</div><div><br></div><div>namespace monoMain</div><div>{</div><div>    public class myApp</div><div>    {</div><div>        public static void Main()</div>
<div>        {</div><div>                NSApplication.Init();</div><div>                MyViewController sv = new MyViewController();</div><div>                Console.WriteLine(&quot;class handle {0}&quot;, sv.ClassHandle.ToString(&quot;x&quot;));</div>
<div>                Console.WriteLine(&quot;class name {0}&quot;, new Class(sv.ClassHandle).Name);</div><div>                Class kls = new Class(&quot;MyViewController&quot;);</div><div>                Console.WriteLine(&quot;kls handle {0}&quot;, kls.Handle.ToString(&quot;x&quot;));</div>
<div>                Console.WriteLine(&quot;kls name {0}&quot;, kls.Name);</div><div>        }</div><div>    }</div><div><br></div><div>    [Register(&quot;MyViewController&quot;)]</div><div>    public class MyViewController : NSViewController</div>
<div>    {</div><div>        public MyViewController()  { }</div><div>    }</div><div>}</div></div><div><br></div><div><br></div><div>In the output I get:</div><div><div>class handle a0625e70</div><div>class name NSViewController</div>
<div>kls handle d5dbc0</div><div>kls name MyViewController</div></div><div><br></div><div>The desired output is to have MyViewController returned in both cases.  If I use NSView as the class it does work as expected.</div>
<div><br></div><div>I modified Class.cs to print out additional info:</div><div><div>Registering MyViewController : NSViewController / 0xa0625e70 0xd5dbc0</div></div><div><div>Console.WriteLine (&quot;Registering {0} : {1} / 0x{2} 0x{3}&quot;, name, parent_name, parent.ToString(&quot;x&quot;), handle.ToString(&quot;x&quot;));</div>
</div><div><br></div><div>So when the MyViewController is created it appears that its ClassHandle is incorrectly set to its super class handle.  I did take it a step further and created MyViewController2 : MyViewController.  And when sv.ClassHandle is printed out it is NSViewController&#39;s handle.</div>
<div><br></div><div>Thanks,</div><div>Duane</div><div><br></div><meta charset="utf-8">