我有一个WPF窗口。我想添加模糊效果。即当我说Show()
或Close()
时,它应该模糊到视图中并且模糊不清。
我尝试使用Effect = new BlurEffect()
,但我相信它是在Windows可见的时候
编辑: 我发现我实际上可以控制不透明度,所以我决定淡出窗口。
答案 0 :(得分:1)
以下为我工作。
var _sb = new Storyboard();
var da = new DoubleAnimation(0.0, 1.0, new Duration(time)) {AutoReverse = false};
Storyboard.SetTargetProperty(da, new PropertyPath(OpacityProperty));
_sb.Children.Clear();
_sb.Children.Add(da);
this.Opacity = 0;
Show();
_sb.Begin(this);
答案 1 :(得分:0)
据我所知,您不能模糊整个窗口(窗口被定义为Chrome窗口元素),您可以模糊窗口中的任何UI元素。
您可以通过在Blend中创建动画来实现此目的。添加模糊效果,然后创建一个故事板。无论如何都可以标题(BlurIn)。然后在时间线内设置模糊效果的开始和结束。将此动画放在资源字典中或触发效果的xaml页面中。
然后,您可以通过
等代码调用此动画private void BeginAnimation()
{
stroyboard1.Begin();
}
我不知道您是如何设置应用程序的,但是根据您使用UI元素的方式,您可以使用onLoad或事件处理程序上应用此模糊效果显示对象或视图的视图。