- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
假设有两个项目,一个 WinForms 项目和一个 WPF 项目,在 WinForms 项目中,将以下代码放在 Main() 中并删除 Application.Run 没有问题:
while (true)
{
Thread.Sleep(1000);
Form1 window = new Form1();
window.Show();
Thread.Sleep(1000);
window.Close();
}
但是,在 WPF 应用程序中,删除 StartupUri="Window1.xaml"然后创建:
public App()
{
while (true)
{
Thread.Sleep(1000);
Window window = new Window();
window.Show();
Thread.Sleep(1000);
window.Close();
}
}
程序无限循环,但窗口只打开一次?
最佳答案
您需要像这样更改 ShutdownMode
public App()
{
this.ShutdownMode = ShutdownMode.OnExplicitShutdown;
while (true)
{
Thread.Sleep(1000);
Window window = new Window();
window.Show();
Thread.Sleep(1000);
window.Close();
}
//Will never get here with this sample code,
//but this would be how you close the app.
this.Shutdown();
}
否则 WPF 会将关闭第一个打开的窗口视为关闭应用程序。虽然循环中的代码会继续运行。
The lifetime of some applications may not be dependent on when the main window or last window is closed, or may not be dependent on windows at all. For these scenarios you need to set the ShutdownMode property to OnExplicitShutdown, which requires an explicit Shutdown method call to stop the application. Otherwise, the application continues running in the background.
关于c# - WPF 只能打开一个窗口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/663942/
有一条(相对)众所周知的 Perl 公理:“只有 Perl 可以解析 Perl”。我想知道 Perl 6 是否仍然如此? 扩大讨论...考虑到 PyPy 最近的更新,我想到了这个问题。 Perl 独特
这是设置。在上一个问题中,我发现我可以通过子组件中的状态传递对象属性,然后使用 componentDidUpdate 获取该对象属性。在这种情况下,状态和属性都称为到达。 这是基本代码... expo
我运行的是 10.5.2 社区版。我已经标记了 源/主要/资源 作为源目录。我可以右键单击并“编译”某些文件,据我所知,这意味着 IDE 将文件复制到与发送类文件的“com.mydomain.pack
我是一名优秀的程序员,十分优秀!