首页 > 解决方案 > 如何从页面的类访问窗口类的对象?

问题描述

问题是我有一个方法,通过单击页面上的按钮调用它:

public void Go_to_saves(object sender, EventArgs e) { }

它应该调用一个在窗口类中声明的方法:

public void Navigate_to(string source) =>  main_frame.Navigate(new Uri("source"));

但我无权访问页面类中的窗口对象。请帮助我以某种方式访问​​我的窗口类的对象或建议另一种方式我可以控制来自某个页面的页面导航。抱歉,我是 WPF 新手

标签: wpf

解决方案


我的直觉是使用事件。Page不是不知道,WindowWindow 确实知道Page。您可以在您的事件中声明一个事件,Page并在Window加载所述事件时附加一个事件处理程序Page。然后Page,当Button单击 时,将引发事件,这将调用Window.

这是一篇 MSDN 文章,可帮助您入门:处理和引发事件

或者,您可以在加载时传递对Windowfrom theWindow的引用。这可以让你直接调用方法,但在我看来,这并不完全“干净”。PageWindowWindow


推荐阅读