см. http://blogs.msdn.com/b/jaredpar/archive/2010/02/19/flattening-class-hierarchies-when-debugging-c.aspx
ОБНОВЛЕНИЕ: Я написал коммерческий инструмент под названием OzCode , который решает эту проблему. Идея состоит в том, что если вас интересует свойство базового класса, вы можете пометить это свойство как «Помеченное звездочкой», в результате чего свойство появится вверху списка членов, а также в тексте его родителя.
Так, например, в следующем сценарии мне пришлось развернуть два базовых узла, чтобы увидеть нужные мне свойства: «Важные» и «Интересные»:
![No Stars](https://i.stack.imgur.com/DR4qA.png)
Но как только я отмечу эти свойства, они всегда будут отображаться сверху, даже при просмотре переменных типа Derived, поэтому я посмотрю:
![After adding stars](https://i.stack.imgur.com/cdYXT.png)
Эти звезды сохраняются и будут отображаться всякий раз, когда вы просматриваете объект этого типа в окне DataTip или QuickWatch с этого момента, поэтому в следующий раз, когда вы будете использовать переменную этого типа, вы выиграете не нужно расширять эти "базовые" узлы. А поскольку помеченные значения отображаются как текст родительского узла, если вы посмотрите на структуру данных дерева этих сильно вложенных объектов (как вы заявили, что вы это сделали), вы сможете увидеть эти свойства, даже не расширяя узлы вообще.
ПОЛНОЕ РАСКРЫТИЕ : я являюсь соавтором инструмента, который я описал здесь.