如何在 WPF 4.0 中创建发光的 TextBox?

2024-03-19

我正在尝试创建一个文本框,当聚焦时它会发光。

到目前为止我看到的所有如何执行此操作的示例都基于外发光位图效果 http://msdn.microsoft.com/en-us/library/ms752037%28v=vs.90%29.aspx,而且看起来它不适用于 .net 4 http://social.expression.microsoft.com/Forums/br/blend/thread/0424f7c5-90b3-449b-ad03-6ca29bf93fa0.

第二篇文章中推荐的是使用模糊效果。我不知道如何使用模糊来使对象的外层发光而不扭曲对象的内部内容。

最终,我希望创建一个文本框,它会在聚焦时显示发光动画,并且在控件失去焦点后发光会慢慢(1-2秒)消失。

关于在 wpf 4.0 中执行此操作的最佳方法是什么的任何想法?


您可以尝试使用以下方法获得不错的“发光效果”DropShadowEffect。这是一个例子

Update. A TextBox当聚焦时开始“发光”,当失去焦点时“发光”慢慢消失两秒钟

<TextBox Text="Test">
    <TextBox.Style>
        <Style TargetType="TextBox">
            <Setter Property="Effect">
                <Setter.Value>
                    <DropShadowEffect ShadowDepth="0"
                                      Color="Gold"
                                      Opacity="0"
                                      BlurRadius="8"/>
                </Setter.Value>
            </Setter>
            <Style.Triggers>
                <Trigger Property="IsFocused" Value="True">
                    <Trigger.EnterActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation To="1.0"
                                                 Storyboard.TargetProperty="(Effect).Opacity"
                                                 Duration="00:00:00"/>
                            </Storyboard>                                    
                        </BeginStoryboard>
                    </Trigger.EnterActions>
                    <Trigger.ExitActions>
                        <BeginStoryboard>
                            <Storyboard>
                                <DoubleAnimation To="0.0"
                                                 Storyboard.TargetProperty="(Effect).Opacity"
                                                 Duration="00:00:02"/>
                            </Storyboard>
                        </BeginStoryboard>
                    </Trigger.ExitActions>
                </Trigger>
            </Style.Triggers>
        </Style>
    </TextBox.Style>
</TextBox>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 WPF 4.0 中创建发光的 TextBox? 的相关文章

随机推荐