且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

WPF:当文本框具有焦点时,为列表框设置IsSelected,而不会丢失对LostFocus的选择

更新时间:2021-10-09 09:10:28

我发现***的解决方案是没有代码的:

Best solution I've found to do this with no code behinde is this:

<Style TargetType="{x:Type ListBoxItem}">
    <Style.Triggers>
        <EventTrigger RoutedEvent="PreviewGotKeyboardFocus">
            <BeginStoryboard>
                <Storyboard>
                    <BooleanAnimationUsingKeyFrames
                        Storyboard.TargetProperty="(ListBoxItem.IsSelected)">

                        <DiscreteBooleanKeyFrame KeyTime="0" Value="True"/>
                    </BooleanAnimationUsingKeyFrames>
                </Storyboard>
            </BeginStoryboard>
        </EventTrigger>
    </Style.Triggers>
</Style>