如何使TextBox具有焦点,以便用户可以开始输入

时间:2016-07-25 07:57:04

标签: xaml

我有一个TextBox,我希望在观看'负载。当我说焦点时,我的意思是用户可以立即开始输入,文本会出现在焦点文本框中。

我在SO上看到过这么多类似的问题,他们几乎都有相同的答案,使用依赖属性:FocusManager.FocusedElement

我遇到的问题是,虽然这确实选择了控件,但它不允许用户输入!通常,当您选择TextBlock时,您会得到一个闪烁的插入符号。使用以下内容,我看到一个非闪烁的插入符号,如果没有选择textbox(这会使点失败),我就无法输入文本

<TextBox Margin="10" 
         Text="{Binding Threshold,   
         UpdateSourceTrigger=PropertyChanged,                             
         ValidatesOnDataErrors=True }"                            
         FocusManager.FocusedElement="{Binding RelativeSource={RelativeSource Self}}"/>

1 个答案:

答案 0 :(得分:1)

尝试将声明移动到XAML中的MainContainer

<Grid x:Name="MainContainer"
      FocusManager.FocusedElement="{Binding ElementName=txtbox}"
      ...
      >
    ...
    <TextBox    Grid.Row="..." Grid.Column="..." 
                x:Name="txtbox">
    </TextBox>
    ...
</Grid>