Как вы даете стиль активному состоянию TextBox? - PullRequest
1 голос
/ 03 августа 2011

Я знаю, что могу переписать шаблон моих текстовых ящиков, чтобы переопределить его визуальные состояния, но разве нет простого способа сказать: «сделать это текстовое поле желтым, когда оно активно (получило фокус)»?* Что-то вроде «input: active» в css.

Может быть, в silverlight есть способ установить стиль в визуальное состояние элемента управления вместо его общего вида?

Ответы [ 2 ]

0 голосов
/ 03 августа 2011

Если вы не хотите использовать VisualStates, вы можете просто установить FocusVisualStyle непосредственно в TextBox.

<TextBox FocusVisualStyle={...} ... />

Или вы можете использовать триггер в обычном стиле.Фактически, приведенная выше документация предлагает использование триггера, что может быть лучшим подходом:

Если вы намерены использовать специфичное для элемента управления поведение, которое намеренно не согласовано с темой, гораздо лучший подход - использовать триггеры встили для отдельных свойств состояния ввода, такие как IsFocused или IsKeyboardFocusWithin ,

Триггер - это самая близкая вещь к подходу псевдокласса css, к сожалению, егоне так кратко.

0 голосов
/ 03 августа 2011

Вы должны сделать Style, который изменит VisualState.

Смотрите здесь: http://msdn.microsoft.com/en-us/library/ms752068.aspx

...