WPF:无法控制注意力

m-y*_*m-y 2 c# data-binding wpf events setfocus

我似乎无法控制自己真正集中注意力:

XAML:

<Button Command={Binding SetGridToVisibleCommand} />
<Grid Visibility="{Binding IsGridVisible, Converter={con:VisibilityBooleanConverter}}">
    <TextBox Text={Binding MyText} IsVisibleChanged="TextBox_IsVisibleChanged" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

XAML.cs:

private void TextBox_IsVisibleChanged(Object sender, DependencyPropertyChangedEventArgs e)
{
    UIElement element = sender as UIElement;

    if (element != null)
    {
        Boolean success = element.Focus(); //Always returns false and doesn't take focus.
    }
}
Run Code Online (Sandbox Code Playgroud)


ViewModel 的工作是将 IsGridVisible 设置为 true,转换器通过将该值转换为Visibility.Visible(我窥探它)来完成它的工作。

H.B*_*.B. 6

UIElements默认情况下,并非所有人都可以聚焦,您是否尝试过Focusable在尝试之前将其设置为 true Focus()