2011-06-03 72 views
2

我的複選框一個ObjectDataProvider的:通過控制WPF禁用接受tab爲ObjectDataProvider的

<UserControl.Resources> 
     <ObjectDataProvider x:Key="checkboxes" ObjectType="{x:Type Models:Items}" /> 
     <DataTemplate x:Key="Item" DataType="Models:Item" > 
      <CheckBox Content="{Binding Path=Name}" IsChecked="{Binding Path=Include}" /> 
     </DataTemplate> 
     <ItemsPanelTemplate x:Key="HorizontalList" > 
      <StackPanel Orientation="Horizontal" /> 
     </ItemsPanelTemplate> 
    </UserControl.Resources> 

當我選項卡,並獲得了DataTemplate中,它看起來纔去控制裏面,這樣選擇它 -

tabstop selecting objectdataprovider

有沒有辦法關閉這個功能?

結論

這不是ObjectDataProvider的,而是需要ItemsControl的被關閉 -

<ItemsControl ItemsSource="{Binding ElementName=container,Path=ViewModel.Items}" 
          ItemTemplate="{StaticResource Item}" 
          ItemsPanel="{StaticResource HorizontalList}" 
          IsTabStop="False"/> 

謝謝!

回答

2

您的代碼中的ObjectDataProvider沒有問題,只是嘗試在CheckBoxes所在的容器中設置IsTabStop = false。你能否提供更多來自UserControl的xaml代碼?