1、 自定義控件
- 在UserControl標記中
<UserControl KeyboardNavigation.ControlTabNavigation="Local" IsTabStop="False">
KeyboardNavigation.ControlTabNavigation="Local" 設置焦點導航的方式,local可以把自定義控件中的子控件當做是引用窗體中的同級控件一樣對待。
IsTabStop="False" 防止焦點中斷,為了保證封裝性,建議在這里設置。
- 子控件的TabIndex從父控件中獲取
<TextBox x:Name="txt2" TabIndex="{Binding Path=TabIndex, RelativeSource={RelativeSource AncestorType={x:Type local:CustomControl}}}"/>
CustomControl是自定義控件的名稱。
如果有多個子控件,建議調整標簽的前后順序。
2、 窗體
設置控件的TabIndex屬性,也可以使用KeyboardNavigation.TabIndex。
參考:http://msdn.microsoft.com/zh-cn/library/aa969768(VS.90).aspx?ppud=4