如何Window
在 10 秒后重定向到新的 WPF?我正在尝试Windows.Hide()
用于当前Window
和Windows.Show()
另一个Window
,但这不起作用。
问问题
2362 次
2 回答
4
我为此使用了一个计时器:
public partial class MainWindow : Window
{
System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
public MainWindow()
{
InitializeComponent();
dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
dispatcherTimer.Interval = new TimeSpan(0, 0, 5);
dispatcherTimer.Start();
}
private void dispatcherTimer_Tick(object sender, EventArgs e)
{
Window1 w = new Window1();
this.Hide();
w.Show();
dispatcherTimer.Stop();
}
}
于 2013-07-21T14:44:35.737 回答
2
您的 MainWindow 没有机会完成其构建。您可以将代码更改为此,或类似的东西......
public MainWindow()
{
InitializeComponent();
Loaded += MainWindowLoaded;
}
void MainWindowLoaded(object sender, RoutedEventArgs e)
{
Loaded -= MainWindowLoaded;
Window1 window1 = new Window1();
window1.Dispatcher.BeginInvoke((SendOrPostCallback) delegate
{
Thread.Sleep(3000);
Hide();
window1.Show();
}, new object[] {null});
}
这让第一个窗口完成它的构造。
于 2013-07-21T13:50:35.593 回答