更改内容属性时触发哪个事件
本文关键字:事件 属性 | 更新日期: 2023-09-27 18:33:35
我有两个页面ProductSearch
,ProductDetail
和我更改Content
属性为在页面之间导航。我想知道是否触发了任何事件,以便我可以在其中编写一些代码?
在页面上ProductDetail
我有UIElement
属性
public UIElement MainContent { get; set; }
在ProductSearch
页面上,我导航到ProductDetail
通过像这样设置 Content
属性:
private void OnGetDetailsClick(object sender, RoutedEventArgs e)
{
ProductDetail productDetail = new ProductDetail();
productDetail.MainContent = this.Content;
this.Content = productDetail;
}
在页面ProductDetail
Back
按钮上,我导航回ProductSearch
:
private void OnBackButtonClick(object sender, RoutedEventArgs e)
{
this.Content = MainContent;
}
现在我想知道如何在导航返回页面时调用方法ProductSearch
即我如何知道我已经从页面导航ProductDetail
?我试图检查它是否加载页面,但发现当您更改控件内容时,它不会触发页面的load
事件。有什么解决办法吗?
是的,这不会执行加载事件,因为您只是明显地更改了内容。
如果您想利用导航,您应该查看此视频。即使它完成了混合,这些概念也适用于Visual STudio:https://vimeo.com/6599527(简单的Silverlight主/细节导航应用程序与Blend 3)
您应该查看有关大纲详细信息绑定的文章,如下所示:https://msdn.microsoft.com/en-us/library/cc645060(v=vs.95).aspx
关键是要利用 silverlight 附带的强大绑定概念。如果您没有使用深层链接,则可能需要考虑使用用户控件来隐藏/显示详细信息,而不是额外的页面。
呵呵