Как обрисовать UIElement в частичном трасте? - PullRequest
0 голосов
/ 21 октября 2008

Я задавал аналогичный вопрос об этом ранее, но я не указал, что это должно работать в режиме частичного доверия. К сожалению, оба правильных ответа (с использованием UIElement.BitmapEffect или UIElement.Effect) недопустимы в частичном доверии, поскольку для этого требуется UIPermissionWindow.AllWindows.

Кто-нибудь знает способ сделать что-то похожее на OuterGlowBitmapEffect в приложении с частичным доверием?

1 Ответ

2 голосов
/ 21 октября 2008

Если вам нужен контур прямоугольника, вы можете прикрепить Adorner с простым прямоугольником в нем. Это не будет иметь эффект свечения, который вы ищете, хотя.

Если вам нужен контур не прямоугольника, вы все равно можете использовать Adorner, но вам также нужно указать маску непрозрачности, основанную на visualBrush на вашем объекте. Вам также придется сделать его немного больше, чем исходный визуальный элемент, чтобы он выглядел так, как будто он окружает объект, а не перекрывает его.

Если вы хотите заняться фантазией, вы можете инкапсулировать прикрепление украшателя в присоединенное свойство зависимостей и просто прикрепить его к любому визуальному элементу, который вам нужно набросать.

Если вы не хотите беспокоиться об украшениях, у вас может быть два отдельных шаблона для визуализации - один с предварительно созданным контуром и один без, и переключайте их по мере необходимости. Тем не менее, это требует от вас заранее знать, какие визуальные элементы вам нужно наметить и каков их стиль. Конечно, вы можете сделать это довольно гибким с привязкой данных, но все же это не общее решение вашей проблемы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...