C# /选项卡索引在用户控件和普通控件之间不起作用

C# /选项卡索引在用户控件和普通控件之间不起作用,c#,wpf,C#,Wpf,嗨,我在一个页面中有一个wpf用户控件和wpf文本框控件,当我按下键盘上的Tab键时,它不会进入下一个控件,这是一个普通的文本框。我已经将属性Tabstop设置为true,但没有任何效果 我没有为用户控件中的选项卡索引创建任何特殊属性 <StackPanel Orientation="Vertical"> //(User Control) <controls:UserControl x:Name="txt_Name" Header="Name"/> (

嗨,我在一个页面中有一个wpf用户控件和wpf文本框控件,当我按下键盘上的Tab键时,它不会进入下一个控件,这是一个普通的文本框。我已经将属性Tabstop设置为true,但没有任何效果

我没有为用户控件中的选项卡索引创建任何特殊属性

<StackPanel Orientation="Vertical">
  //(User Control)
  <controls:UserControl x:Name="txt_Name" Header="Name"/>  

   (Normal TextBox Control)
  <StackPanel Orientation="Vertical" Margin="10">
      <Label Content="Size" VerticalAlignment="Top" />  
      //(Normal TextBox Control)                       
      <TextBox Name="txt_sizeofFacility"/>
  </StackPanel>


  <StackPanel Orientation="Vertical" Margin="10">
     <Label Content="Age" VerticalAlignment="Top" />
     //(Normal TextBox Control)
     <TextBox Name="txt_ageofFacility"/>
  </StackPanel>

    //(User Control)
  <controls:UserControl x:Name="txt_primaryActivity"  Header="Primary Activity"/>
</StackPanel>

//(用户控制)
(普通文本框控件)
//(普通文本框控件)
//(普通文本框控件)
//(用户控制)
这是我的代码:

<StackPanel Orientation="Vertical">
    <!--//(User Control)-->
    <controls:UserControl1 x:Name="txt_Name" />

    <!--(Normal TextBox Control)-->
    <StackPanel Orientation="Vertical" Margin="10">
        <Label Content="Size" VerticalAlignment="Top" />
        <!--//(Normal TextBox Control)-->
        <TextBox Name="txt_sizeofFacility"/>
    </StackPanel>


    <StackPanel Orientation="Vertical" Margin="10">
        <Label Content="Age" VerticalAlignment="Top" />
        <!--//(Normal TextBox Control)-->
        <TextBox Name="txt_ageofFacility"/>
    </StackPanel>

    <!--//(User Control)-->
    <controls:UserControl1 x:Name="txt_primaryActivity"  />
</StackPanel>

这是用户控件:

<UserControl x:Class="TabIndex.UserControl1"
         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
         xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
         xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300">
<Grid>
        <TextBox x:Name="test"></TextBox>
</Grid>


我可以复制。即使在每个文本框中手动设置焦点后,Tab仍然可以工作,我也遇到了同样的问题,并且发现您可以在用户控件上设置下面的属性,这对我来说很有效

KeyboardNavigation.TabNavigation="Local" 

我复制了你的代码,我不能复制它。。。按tab键就可以了。你能说得更具体一点吗?试着手动将焦点放在
txt\u sizeofacility
上,然后按Tab键发生了什么事?我在哪里可以设置焦点,无论是在设计中还是在代码背后?我不明白。您想通过单击来设置项目焦点吗?实际上我不想单击,如果我只是按Tab键,光标应该移动到下一个控件,无论是用户控件还是普通控件。我想您的问题是您没有设置初始焦点项目。尝试将项目设置为以加载为焦点;在您的Window.loaded事件中