1

我有一个使用 WPF + 页面导航的应用程序。应用程序和流程运行良好,不是问题。但是最近在做一些测试的时候,发现代码中有如下行为。

我用过NavigationServices.Navigate(new Class())

当我触发此功能时,页面确实可以正确导航,但它甚至在完全加载页面之前执行某些事件。

例子:

InitializeComponent();我启用了一个单选按钮并且这个单选按钮启用了事件检查之后,在类构造函数下和下一行。因此,基于此,即使在 UI 完全加载到框架中之前,逻辑也会首先执行。

我的问题:如何停止一段时间内的所有事件并确保 UI 已完全加载,然后事件触发。

4

1 回答 1

0

使用Window.Loaded事件;一旦所有 UI 组件都准备好就会触发。

当元素布局、渲染并准备好交互时发生。

public MyWindow() 
{
    InitializeComponent();
    this.Loaded += MyWindow_Loaded;
}

private void MainWindow_Loaded(object sender, RoutedEventArgs e)
{
    // initialization stuff ...
}
于 2012-10-18T03:59:11.437 回答