2012-03-31 115 views
1

我有一个“列表视图”,这样的:如何在ListView中分配“Tab”键而不是“Ctrl + Tab”键?

<ListView ItemsSource="{Binding ...}" >  
    <ListView.ItemContainerStyle> 
     <Style TargetType="ListViewItem"> 
      <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
      <Setter Property="MinWidth" Value="50"/> 
      <Setter Property="KeyboardNavigation.IsTabStop" Value="False" /> 
      <Style.Triggers> 
       <Trigger Property="IsKeyboardFocusWithin" Value="true"> 
        <Setter Property="IsSelected" Value="true" /> 
       </Trigger> 
      </Style.Triggers> 
     </Style> 
    </ListView.ItemContainerStyle> 
    <ListView.ItemsPanel> 
     <ItemsPanelTemplate> 
      <StackPanel Orientation="Horizontal"></StackPanel> 
     </ItemsPanelTemplate> 
    </ListView.ItemsPanel> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <TextBox Text="{Binding ... }" /> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

现在的工作重点导航与CTRL + TAB组合键的项目,但我想处理并更换只是TAB关键,而不是它。 我该怎么做?

回答

1

试试这个

<ListView ItemsSource="{Binding Student}" KeyboardNavigation.TabNavigation="Continue" KeyboardNavigation.ControlTabNavigation="None" > 
     <ListView.ItemContainerStyle> 
      <Style TargetType="ListViewItem"> 
       <Setter Property="HorizontalContentAlignment" Value="Stretch" /> 
       <Setter Property="MinWidth" Value="50"/> 
       <Setter Property="KeyboardNavigation.IsTabStop" Value="False" /> 

       <Style.Triggers> 
        <Trigger Property="IsKeyboardFocusWithin" Value="true"> 
         <Setter Property="IsSelected" Value="true" /> 
        </Trigger> 
       </Style.Triggers> 
      </Style> 
     </ListView.ItemContainerStyle> 
     <ListView.ItemsPanel> 
      <ItemsPanelTemplate> 
       <StackPanel Orientation="Vertical"></StackPanel> 
      </ItemsPanelTemplate> 
     </ListView.ItemsPanel> 
     <ListView.ItemTemplate> 
      <DataTemplate> 
       <TextBox Text="{Binding Name }" /> 
      </DataTemplate> 
     </ListView.ItemTemplate> 
    </ListView> 

设置KeyboardNavigation.TabNavigation = “继续” 的ListView KeyboardNavigation.ControlTabNavigation = “无”。希望这会有所帮助。我已经尝试过,它的工作。

+0

非常完美,非常感谢! – 2012-03-31 15:45:41