Стереть дочерние элементы InkCanvas
Вопрос
У меня есть общий код кода в окне, в котором я разрешаю пользователю рисовать стилусом, касанием или мышью.Я также разрешаю пользователю добавлять текст.Пользователь нажимает кнопку «добавить текст», затем нажимает на том месте холста, где он хотел бы разместить текст.Там появляется текстовое поле, позволяющее печатать.При вводе или потере фокуса я создаю общий кодовый тег и добавляю его в общий кодовый код.
Я хотел бы, чтобы пользователь мог стереть созданный им текст, когда код InkCanvas
находится в режиме стирания (я использую код ContentControl
).Я попытался захватить события myInkCanvas.Children
и InkCanvas
элементов управления содержимым, но ни один из них не сработал.
Есть ли событие, которое я могу запечатлеть?Есть ли лучший способ справиться с этим сценарием?Возможно ли такое?
Решение
Для этого можно использовать проверку нажатия
посмотрите здесь
сначала получите InkPresenter
родовое словозатем получите HitTestResult своей точки
родовое слово затем вы можете использовать hitTestResult.VisualHit
для удаления этого объекта