1

我在 ListBox 中有一个用户控件,当我使用 Tab 键聚焦时,我希望将焦点放在控件中的 TextBox 而不是自定义控件上。我该怎么做?

我简化了代码,因为在我的控制中我有其他 UI 元素。

用户控制代码:

<Grid>
    <TextBox Name="txtFreeTextDescription" Style="{StaticResource TextBoxStyleLargeDynamic}" Text="{Binding Description, Mode=TwoWay, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}" />
</Grid>

列表框代码:

<ListBox Name="lsbItems" DataContext="{Binding}" KeyboardNavigation.TabNavigation="Local">
      <ListBox.ItemTemplate>
         <DataTemplate>
             <local:SectionDynamicItem x:Name="ucSectionDynamicItem" Description="{Binding SectionItem.Description}"  />
          </DataTemplate>
       </ListBox.ItemTemplate>
</ListBox>
4

2 回答 2

2

这对我有用....

   <ListBox ItemsSource="{Binding EmployeeList}"
            KeyboardNavigation.TabNavigation="Continue">
        <ItemsControl.ItemContainerStyle>
            <Style TargetType="ListBoxItem">
                <Setter Property="Focusable" Value="False"/>
            </Style>
        </ItemsControl.ItemContainerStyle>
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>
                <StackPanel Orientation="Horizontal"/>
            </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Grid Margin="5" Focusable="False">
                    <TextBox Text="{Binding Name}"/>
                </Grid>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ListBox>
于 2012-10-23T09:40:00.407 回答
-1

检查下面的链接。

http://social.msdn.microsoft.com/forums/en-US/wpf/thread/98d8423c-9719-4291-94e2-c5bf3d80cd46/

谢谢拉杰尼坎特

于 2012-10-23T09:34:52.363 回答