2013-08-20 26 views
0

標準(SL4)SDK DatePicker似乎無法識別當我設置它IsTabStop="False"。我知道有一個嵌入式TextBox輸入爲System_Windows_Controls_Primitives:DatePickerTextBox,如果您深入瞭解其模板已被設置爲IsTabStop="False"這是混淆?SDK DatePicker IsTabStop忽略

父模板有一個Setter宣佈模板爲IsTabStop="False"所以我的問題是?爲什麼/將如何被忽略?

我在哪工作?除了事實模板System_Windows_Controls_Primitives:DatePickerTextBox試圖TemplateBindingIsTabStop,當你通過轉變 + 標籤它不會在反向標籤儘量向後標籤?

所以我有點迷茫......我甚至試圖通過DatePicker.Resources通過StyleTargetType申報設置的實例,似乎無法得到開溜。

有沒有人碰到過這個?我很驚訝,以前我沒有,並且很想知道一個理由和/或解決方法。或者,如果這可能是這種情況唯一的東西。謝謝!

PS - 我見過的其他解決方法只針對WPF,並不涉及此問題。

+1

ctrl + tab是什麼意思不會反向移動?你的意思是移動+標籤? – McAden

+0

好,趕緊對此表示歉意 –

回答

1

作爲一項測試,我創建了一個新的SL 5項目(對不起,沒有安裝4個),並刪除了一個TextBox,兩個DatePickers和另一個TextBox,以便我可以看到選項卡操作。

然後我在第一個DatePicker上將IsTabStop設置爲False,就像你說的那樣,它被忽略。

然後我做了一個模板的副本,找到DatePickerTextBox並添加了IsTabStop =「False」並再次運行它。

然後在向前或向後切換時跳過DatePicker。所以這應該適合你。

<Primitives:DatePickerTextBox x:Name="TextBox" 
                 BorderBrush="{TemplateBinding BorderBrush}" 
                 BorderThickness="{TemplateBinding BorderThickness}" 
                 IsTabStop="False" 
                 Background="{TemplateBinding Background}" 
                 Grid.Column="0" 
                 Padding="{TemplateBinding Padding}" 
                 SelectionBackground="{TemplateBinding SelectionBackground}" /> 

的IsTabStop由只是因爲代碼應該綁定到DatePickerTextBox的SDK缺少默認模板忽略。

Greg

+0

我認爲這是我嘗試的,但我通過IsTabStop =「{TemplateBinding IsTabStop}」將模板綁定到模板上,除非它遵守向前製表符順序,但不是相反,它不會將選項卡反轉爲DatePicker,只要它已經通過Shift + Tab進行了標記,而該選項卡也不是bueno。所以我會再試一次,並嘗試看看結果。謝謝你的方式! –

+0

我剛剛添加了模板綁定,它確實對我有用,並且使用Tab鍵切換標籤。但無論如何,歡迎您!格雷格 –

+0

好拍我不得不考慮更多,希望它不只是另一個倒退之間SL4 VS SL5我不斷遇到。 :/無論哪種方式,它是令人沮喪的笑lol –