繁体   English   中英

导航时如何重新加载页面

[英]How to reload page when navigating

我正在开发WPF MUI应用程序。我使用onclick按钮导航到另一页,并在page1.xaml上打印一些文本。 在我使用另一个按钮导航以在page1.xaml上打印另一个文本后,但是我无法做到这一点。我的输出不是新文本。仅是早期详细信息。无法重新加载page1.xaml。导航时我传递参数并根据同一页上的参数打印参考文本。有人可以帮助我吗?

这是我的导航代码

var frame = NavigationHelper.FindFrame(null, this);
frame.Source = new Uri("../Content/Sale/SaleInvoice/Nested/saleNested.xaml", UriKind.Relative);

使页面数据绑定到ViewModel。 一旦要刷新,只需创建一个新的Viewmodel。 在backgroudworker中执行重新加载会很有意义,这样您的UI才能保持响应状态。 如果您要从WebService或其他在线资源中刷新某些资源,这特别有用。

数据在初始时间绑定到页面以重新加载我正在使用此方法的页面
在xaml页面上,只需添加Loaded属性:

<UserControl x:Class="ModernUINavigationApp1.Pages.Page"
         ...
         Loaded="OnLoad" >

然后在后面的代码中添加事件处理程序,以使页面在加载时可以执行所需的操作

private void OnLoad(object sender, RoutedEventArgs e)
    {

    }

希望这个帮助:D

确保您的ViewModel实现了INotifyPropertyChanged 如果将Page1.xaml的DataContext设置为ViewModel,并且XAML正确使用了绑定,则对ViewModel所做的任何更改都将反映在UI中。 您无需刷新任何内容。 只需更新ViewModel对象中的属性即可。

如果您使用示例XAML和C#更新问题,那么我将为您提供更多帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM