2013-02-15 66 views
1

在我的自定義控件中,我有2個文本框。當它們中的任何一個都集中時,它稍微改變它的風格......它失去了一點邊界。我想阻止這種行爲,這似乎是默認的文本框行爲。現在防止WPF文本框在聚焦時改變外觀

,我認爲它的東西做的風格,可能與文本模板

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

不過的一部分,反正是有防止這種情況?

回答

1

@Daniel您必須修改Focussed State StoryBoard。爲了編輯你的TextBox Template改變狀態。如果你有Expression Blend這對你來說很容易。

+0

我還沒有表達式融合,但看着默認的TextBox ControlTemplate我找不到焦點狀態的故事板......我想我真的很想念這裏至關重要的東西嗎?這是TextBoxBase中的故事板嗎?或者我只是設置一個新的?在任何情況下,感謝您的回答到目前爲止 – Daniel 2013-02-15 10:00:26

+1

這裏是關於在哪裏/如何找到默認主題內容的問題:http://stackoverflow.com/questions/3548319/where-can-i-find-the-default-wpf -control-templates – 2013-02-18 20:06:23

+0

好吧,我看到它是如何工作的,是否有任何簡單的方法去除焦點狀態故事板?或者我覆蓋它?所以,我在http://msdn.microsoft.com/en-us/library/ms752068(v=vs.100).aspx中看到了TextBox控件的可視狀態,我只是再次定義了Foccussed狀態? (對不起,如果這個問題可能顯示缺乏WPF知識) – Daniel 2013-02-19 07:40:36

0

你必須編輯默認TextBox ControlTemplate,你可以找到here

0
  1. 您需要自定義控件的控件模板。
  2. 在那裏的資源中,您需要設置所有文本框目標類型的樣式。這樣,你不會影響常規文本框。

如果您分享一些我們可以查看/修改以實現所需內容的代碼將會很有幫助。