• WPF通过EventTrigger改变其他控件的值


    场景:点击TextBox后弹出Poppup

    原理:使用EventTrigger后触发StoryBoard,通过StoryBoard改变其他控件的值。

    参考代码:

    <Grid>
        <Grid.RowDefinitions>
            <RowDefinition/>
            <RowDefinition/>
            <RowDefinition/>
        </Grid.RowDefinitions>
        <TextBox 
            x:Name="tb"
            Grid.Row="0"
            Text="Here is some sample text">
        </TextBox>
        <Button 
            x:Name="btnFocusTrue"
            Grid.Row="1"
            Content="Set True">
        </Button>
        <Button 
            x:Name="btnFocusFalse"
            Grid.Row="2"
            Content="Set False">
        </Button>
        <Grid.Triggers>
            <EventTrigger RoutedEvent="Button.Click" SourceName="btnFocusTrue">
                <BeginStoryboard Name="FocusTrueStoryboard">
                    <Storyboard >
                        <BooleanAnimationUsingKeyFrames
                            Storyboard.TargetName="tb"
                            Storyboard.TargetProperty="(TextBox.Focusable)">
                            <DiscreteBooleanKeyFrame
                                KeyTime="00:00:01"
                                Value="True" />
                        </BooleanAnimationUsingKeyFrames>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
            <EventTrigger RoutedEvent="Button.Click" SourceName="btnFocusFalse">
                <BeginStoryboard Name="FoucsFalseStoryboard">
                    <Storyboard >
                        <BooleanAnimationUsingKeyFrames
                            Storyboard.TargetName="tb"
                            Storyboard.TargetProperty="(TextBox.Focusable)">
                            <DiscreteBooleanKeyFrame
                                KeyTime="00:00:01"
                                Value="False" />
                        </BooleanAnimationUsingKeyFrames>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Grid.Triggers>
    </Grid>
  • 相关阅读:
    【AGC010E】Rearranging(博弈,图论,拓扑排序)
    【ARC074F】Lotus Leaves(最小割)
    【ARC069F】Flags(2-SAT,Tarjan,线段树优化建图)
    [CTS 2019] 氪金手游
    HDU
    LOJ
    LOJ
    [TJOI 2015] 概率论
    [AGC 018F] Two Trees
    LOJ
  • 原文地址:https://www.cnblogs.com/bincoding/p/8573368.html
Copyright © 2020-2023  润新知