关注文本框不工作

本文关键字:工作 文本 | 更新日期: 2023-09-27 17:51:05

我有一个主窗口,其中包含承载其他页面的内容控件。其中一个页面有一个文本框和一个网格视图。当页面加载时,我想将焦点设置在文本框上。如果我在代码隐藏中这样做,盒子就无法聚焦。如果在XAML中使用

FocusManager.FocusedElement="{Binding ElementName=DrugScanTextBox}"

然后我可以看到光标在文本框中,但它不闪烁,按键不显示在框中。

我唯一的猜测是,焦点是由gridview加载并绘制数据后。

有什么办法解决这个问题吗?

关注文本框不工作

我添加了一个布尔属性'FocusNow',并在我的后台工作者的加载事件结束时将其设置为true,然后在用户控件周围添加这个边框样式。这样,在一切完成加载后,它将焦点设置为网格(在你的例子中是文本框)。

<Border Margin="10" >
    <Border.Style>
        <Style>
            <Style.Triggers>
                <DataTrigger Binding="{Binding FocusNow}" Value="True">
                    <Setter Property="FocusManager.FocusedElement" Value="{Binding ElementName=xamDataGrid1}" />
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </Border.Style>

。..