Почему FrameworkElement.VisualChildrenCount защищен? - PullRequest
2 голосов
/ 11 июля 2011

Вот фон для моего вопроса:

  1. Я хотел бы знать, если конкретный System.Windows.Documents.AdornerLayer пуст или нет.
  2. "Хорошо, я сделаю проверкуmyAdornerLayer.VisualChildrenCount > 0. "
  3. " Ну что ж, собственность AdornerLayer.VisualChildrenCount защищена. "(Он переопределяет System.Windows.FrameworkElement.VisualChildrenCount, который также защищен.)
  4. "Хм ... Это не остановит меня. Я просто получу доступ к myAdornerLayer.VisualChildrenCount через отражение."
  5. "ВклС другой стороны, возможно, это будет иметь какой-то плохой побочный эффект. Может быть, VisualChildrenCount был защищен по причине. Я спрошу переполнение стека ".

Если использование отражения - это плохоидея, у вас есть предложение для другого способа выяснить, является ли AdornerLayer пустым или нет?

1 Ответ

2 голосов
/ 11 июля 2011

Существует класс Visual Tree Helper, который был создан для этой цели.

http://bing.com/search?q=visualTreeHelper

...