Я создал следующее:
(1) AutomatedContentControl
(2) AutomatedAutomationPeer
, где AutomatedContentControl
- это элемент управления содержимым (переопределить OnCreateAutomationPeer), который имеетAutomatedAutomationPeer
(переопределить GetBoundingRectangleCore).
Я хотел бы сделать что-то действительно простое, например: раз в 5 секунд менять границы BoundingRectangle
AutomatedContentControl
.
Я сделал это, переопределив GetBoundingRectangleCore
(), который просто возвращает новый Rect со случайными значениями, и каждые 5 секунд я вызываю AutomatedAutomationPeer.InvalidatePeer()
.
Однако InvalidatePeer()
ничего не делает.Я не вижу, как звонят GetBoundingRectangleCore()
.
Почему GetBoundingRectangleCore()
не следует после InvalidatePeer()
вызова?Разве InvalidatePeer()
не должен вызывать пересчет всех свойств, таких как BoundingRectangle
?
Есть ли что-то еще, что я мог бы использовать, чтобы он подобрал новый BoundingRectangle
?
Спасибо за вашу помощь заранее.