WPF - 将重点放在文本框上

时间:2015-01-05 10:14:45

标签: c# wpf xaml

在我的WPF应用程序中,我在一个页面上有很多文本框。我想将焦点放在第一个文本框上。我用Google搜索并尝试了不同的解决方案。

XAML代码:

<StackPanel Width="350" HorizontalAlignment="Left" >
    <TextBlock x:Name="CustNamelbl" Text="C U S T O M E R  N A M E"
               Style="{StaticResource LightBoldTxtblkStyle }"/>
    <Grid Height="35">
         <TextBox x:Name="CustName" Style="{StaticResource Txtbox}"
                  LostFocus="CustName_LostFocus_1"   TabIndex="1"
                  CommandManager.PreviewExecuted="CustName_PreviewExecuted"
                  ContextMenu="{x:Null}" PreviewTextInput="CustName_PreviewTextInput"
                  Margin="0,0,0,0" GotFocus="CustName_GotFocus"/>
         <Rectangle Fill="White" Height="2" Opacity="0.2" 
                    VerticalAlignment="Bottom"></Rectangle>
   </Grid>
</StackPanel>   

C#代码:

CustName.Focus();
Keyboard.Focus(CustName);

使用此代码我在Focus上获得了TextBox。我也可以打开系统键盘。但是,我无法在TextBox中输入任何内容。此外,该聚焦光标不是闪烁的光标,而只是一个稳定的光标。

1 个答案:

答案 0 :(得分:2)

给你的TextBox一个名字,然后你可以在你的Window-Tag

中打电话
FocusManager.FocusedElement="{Binding ElementName=YOURTBNAME}"