I won't say you're doing it wrong, but you need to re-think it. Please, read this:
Walkthrough: Creating Your Own Collection Class[
^]
Your class inherits from CollectionBase, so:
class somelist : CollectionBase
{
public int Capacity
{
get
{
return List.Count();
}
would do the work.
I do not recommend to use arrays. Use List<T> instead. See:
List<T> Class[
^]