我正在尝试在另一个窗口上使用弹出窗口。使用 showDialog 方法调用弹出窗口,其中弹出窗口本身只是设计为弹出窗口的另一个窗口。
我想让后窗变得模糊,以便将焦点设置到弹出窗口。 我尝试使用:
BlurEffect objBlur = new BlurEffect();
objBlur.Radius = 30;
this.Effect = objBlur;
popup.showDialog();
this.Effefct = null;
问题是程序有点“卡住”了一段时间,需要很长时间才能看到弹出窗口。
如果没有模糊效果,弹出窗口当然会立即显示。当半径较低时,延迟时间较短,但半径非常低(如 5)时,会花费太多时间。
有什么问题吗?我可以解决这个问题吗?如果没有,有没有更好的方法来实现这一目标?
最佳答案
尝试改变BlurEffect.KernelType至 Box值(value)。高斯内核可创建更高质量的模糊,但如果考虑性能,请使用 Box 内核,因为它使用的计算量较少。还要确保 RenderingBias是性能(默认)。
关于c# - BlurEffect 在应用效果之前有很长的延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10173509/