Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > WPF и Silverlight > Видимость элементов добавленных ControlTemplate ом


Автор: fvoice 28.4.2009, 16:27
Во время валидации, для подсвечивания неверно указанных данных используется ControlTemplate:
    <ControlTemplate x:Key="ValidationTemplate">
        <DockPanel>
            <Border BorderBrush="Red" BorderThickness="2" >
                <AdornedElementPlaceholder/>
            </Border>
        </DockPanel>
    </ControlTemplate>

Загвоздка в том, что появляющаяся красная рамка не реагирует на смену visibility, т.е. контрол скрывается, а рамка нет, также выходит за границы DragDockPanel( из Backlight), и отображается поверх контролов на другой панели..

Помогите пожалуйста разобраться, какие свойства и как нужно свзять, чтобы рамка вела себя аналогично контролу, который она обрамляет.

Автор: fvoice 29.4.2009, 15:36
Смотрю через Snoop, Border лежит в AdornerLayer:
MSDN:
Слой графических элементов гарантированно остается на более высоком Z-образном порядке, чем декорируемые элементы, поэтому графические элементы всегда воспроизводятся на основе декорируемого элемента.

В этом причина того что эта рамка всегда поверх других элементов, остается вопрос, можно ли как то регулировать видимость этого элемента в зависимости от видимости основного элемента?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)