C# 从帧调用父函数
我有一个WPF应用程序Im建设与设计师。在它里面我有一个框架,我正在加载一个页面 老实说,我迷路了。由于缺乏指导和能力,我希望有人能帮助我理解如何做我想做的事情 在页面中,我需要调用一个公共方法“public void updatext”。我知道这已经做了一百万次了,但我就是不明白。我的大多数搜索也会提取web/javascript结果 我曾经在winform环境中用两个窗口做过类似的事情C# 从帧调用父函数,c#,wpf,C#,Wpf,我有一个WPF应用程序Im建设与设计师。在它里面我有一个框架,我正在加载一个页面 老实说,我迷路了。由于缺乏指导和能力,我希望有人能帮助我理解如何做我想做的事情 在页面中,我需要调用一个公共方法“public void updatext”。我知道这已经做了一百万次了,但我就是不明白。我的大多数搜索也会提取web/javascript结果 我曾经在winform环境中用两个窗口做过类似的事情 public partial class setupApp : Form { p
public partial class setupApp : Form
{
private Form1 m_parent;
public setupApp(Form1 frml)
{
InitializeComponent();
m_parent = frml;
}
虽然上面的代码在winform中工作,使我能够从父窗口定位所有公共函数,但我似乎无法将其转换为WPF
我试过了
public partial class Childpage: Page
{
private MainWindow m_parent;
public Childpage(MainWindow mw1)
{
InitializeComponent();
m_parent = mw1;
}
这不会在生成时抛出错误,但无法在调试器启动时立即中断模式。我也不知道这个错误意味着什么
在类型“”上找不到匹配的构造函数
为什么C后端代码不能翻译?有更好的方法吗?我认为您可以在xaml代码中设置帧的源属性,如下所示:
SampleFrame.NavigationService.Navigate(new SamplePage(this));
在这种情况下,您需要在页面中添加一个无参数构造函数
public partial class SamplePage
{
private MainWindow _parentWindow;
public SamplePage()
{
InitializeComponent();
}
public SamplePage(MainWindow parentWindow) : this()
{
_parentWindow = parentWindow;
}
}
但是如果您想将父窗口传递给子页面,您可以在代码隐藏中设置框架内容。像这样:
SampleFrame.NavigationService.Navigate(new SamplePage(this));
在这种情况下,您不需要使用无参数构造函数。如何实例化页面?我这样设置帧源是完全正确的。感谢您指出参数就是问题所在。我想我的理解是,这两项声明相互矛盾。谢谢你的指导