当我调用“this.close()”传递给另一个页面时。关闭的效果,以及一秒钟没有显示的页面。我该如何解决这个问题?
例如:
Game game = new Game();
game.show();
this.close();
当我调用this.close()时,会有一秒没有显示页面的效果。我想和影响类似的浏览器。
答案 0 :(得分:1)
在Windows 7中,Aero效果会导致窗口在显示和关闭时淡入淡出。对于我继承了开发的应用程序之一,这是一个问题,我通过摆脱在屏幕上简单地互相替换的单独表单来解决我的问题。我的WPF经验有限,因此您可能必须解释我的解决方案:
我将程序中的所有表单对象转换为单独的UserControls。 我的基本表单有一个看起来像这样的ActiveScreen属性:
// Code is untested
public Control ActiveScreen
{
get { return _screen; }
private set
{
this.Controls.Remove(_screen);
_screen = value;
_screen.Dock = DockStyle.Fill;
_screen.Size = this.ClientRectangle.Size; // So that control draws correctly the first time.
this.Controls.Add(_screen);
}
}
在快速搜索之后,肯定有其他方法可以绕过Aero效果: Disable aero fade-in effect on dialog