2013-02-15 3 views
1

В моем пользовательском контроле у ​​меня есть 2 текстовых поля. Когда один из них сфокусирован, он немного меняет свой стиль ... он теряет свою границу. Я хотел бы предотвратить это поведение, которое, по-видимому, является поведением по умолчанию для текстовых полей.Предотвращение изменения текстового поля WPF при сфокусированном

Теперь, я полагаю, что его что-то делать со стилем, возможно, с частью шаблона текстового поля

<Setter Property="FocusVisualStyle" Value="{x:Null}"/> 

Однако, есть в любом случае, чтобы предотвратить это?

ответ

1

@ Daniel Вы должны отредактировать Focussed State StoryBoard. Для этого отредактируйте свой TextBox Template для изменения состояния. Если у вас есть Expression Blend, вам будет легко.

+0

У меня нет выражения blend, но, глядя на стандартный TextBox ControlTemplate по умолчанию, я не могу найти Focussed State Storyboard ... Я думаю, что я действительно упустил что-то важное здесь? Это раскадровка в TextBoxBase? Или я просто установил новый? В любом случае, спасибо за ваш ответ – Daniel

+1

вот вопрос о том, где/как найти содержание темы по умолчанию: http://stackoverflow.com/questions/3548319/where-can-i-find-the-default-wpf -control-templates –

+0

Хорошо, я вижу, как это работает, есть ли какой-либо простой способ удаления расфокусированного состояния? Или я его переписываю? Итак, я вижу визуальные состояния для элемента управления TextBox в http://msdn.microsoft.com/en-us/library/ms752068(v=vs.100).aspx, просто я снова определяю состояние Foccussed? (Извините, если этот вопрос может показаться недостатком знаний WPF) – Daniel

0

Вы должны отредактировать значение по умолчанию TextBox ControlTemplate, которое вы можете найти here.

0
  1. Вам нужен шаблон управления для вашего пользовательского элемента управления.
  2. В этих ресурсах вам нужно стилизовать все целевые типы текстового поля. Таким образом, вы не влияете на обычные текстовые поля.

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

Смежные вопросы