Только примитивные элементы управления, которые непосредственно должны рисовать в контексте устройства, например Border
или TextBlock
переопределяют OnRender
, чтобы выполнять свою работу. Поскольку большинство элементов управления являются просто комбинацией этих примитивов, они не рисуют напрямую. Вместо этого они измеряют и упорядочивают своих детей, чтобы они были в хорошем положении и размере.
Вам нужно переопределить методы MeasureOverride
и ArrangeOverride
.
При этом, если вы не хотите ничего визуализировать, лучше установить Visibility
элемента управления на Collapsed
.