<p>Am 09.07.2014 18:43 schrieb "Timothy Groves" <<a href="mailto:the.tail.kinker@gmail.com">the.tail.kinker@gmail.com</a>>:<br>
><br>
> Is there any way to override the type of a property?  As an example, if I have written a list class:<br>
><br>
> type<br>
>     tList = class (tObject)<br>
>         private<br>
>             t_current : tObject;<br>
>             t_items : array of tObject;<br>
>         public<br>
>             property Current : tObject read t_current write t_current;<br>
>     end;<br>
><br>
> (this example is clearly not complete) and I want to create a descendant type that uses a different object, without worrying about typecasting.  Is there a way to override Current?  I tried generics, but using such renders me unable to access the list items' properties, making it impossible to sort the list.  </p>

<p>Normally you simply declare the property anew in your child class. Look at TObjectList from unit contnrs for an example.<br>
In your specific case you'll need a Getter-method that returns "TWhatEverSubclass(inherited Current)".</p>
<p>What exactly is your problem with using generics?</p>
<p>Regards <br>
Sven</p>