public int Compare(object x, object y)
{
int catcomp = (x as PropertyDescriptor).Category.CompareTo ((y as PropertyDescriptor).Category);
if (catcomp == 0)
return (x as PropertyDescriptor).DisplayName.CompareTo ((y as PropertyDescriptor).DisplayName);
else
return catcomp;
}