That depends on what theValue really is.  What kind of objects are stored in the ArrayList?  Are they derived from NSObject?  If no, then that cast is invalid.<div><br></div><div>For example, if you are storing strings in the ArrayList you will need to return new NSString(theValue).<br>
<div><br></div><div>Also have you looked at using NSTableViewDataSource?  Easier than writing the delegate functions by hand.</div><div><br></div><div>Duane<br><br><div class="gmail_quote">On Fri, Aug 20, 2010 at 8:03 AM,  <span dir="ltr">&lt;<a href="mailto:gareth.baker@stfc.ac.uk">gareth.baker@stfc.ac.uk</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">








<div lang="EN-GB" link="blue" vlink="purple">

<div>

<p class="MsoNormal">Hi,</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">I’m trying to use an NSTableView from monomac. I can
get the code to compile with the two delegate functions:</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">         [Export(&quot;numberOfRowsInTableView:&quot;)]</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">         
public int GetRowCount(NSTableView aTableView)</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">          {</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            return
records.Count;// records is an ArrayList</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">      }</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">        </span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            [Export(&quot;tableView:objectValueForTableColumn:row:&quot;)]</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">      public NSObject
GetObjectValue(NSTableView aTableView, NSTableColumn aTableColumn, int rowIndex)</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">      {</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            string
identifier = aTableColumn.Identifier.ToString();</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            Object
theRecord, theValue;</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            </span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">                  theRecord
= records[rowIndex];</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">                  theValue
= ((Hashtable)theRecord)[identifier];</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;"> </span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">            return
(NSObject)theValue;// this cast is not working</span></p>

<p class="MsoNormal" style="text-autospace:none"><span style="font-size:10.0pt;font-family:&quot;Courier New&quot;">      }</span></p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Running the program crashes when I try to add data to the
TableView. Using the debugger seems to indicate that all is well up to the ‘return’
in GetObjectValue when the cast fails with “Unhandled Exception:
System.InvalidCastException: Cannot cast from source to destination type”.
Is this the correct way to do this cast?</p>

<p class="MsoNormal"> </p>

<p class="MsoNormal">Thanks</p>

<p class="MsoNormal">Gareth Baker</p>

<p class="MsoNormal"> </p>

</div>


<br><p>-- 
<br>Scanned by iCritical.
</p>
<br></div>


<br>_______________________________________________<br>
Mono-osx mailing list<br>
<a href="mailto:Mono-osx@lists.ximian.com">Mono-osx@lists.ximian.com</a><br>
<a href="http://lists.ximian.com/mailman/listinfo/mono-osx" target="_blank">http://lists.ximian.com/mailman/listinfo/mono-osx</a><br>
<br></blockquote></div><br></div></div>