我很抱歉发布这个问题,因为这个问题有很多相关科目,但不幸的是他们都没有帮助我! 所以我有一个包含两个wpf窗口的应用程序(MainWindow()和Window1()),我真正想要实现的是从MainWindow()控制window1属性。 例如,我想在每次从MainWindow点击Button1时清除window1中的列表框项目!我还希望能够完全访问从window1中出现在MainWindow中的方法,字段和属性。
答案 0 :(得分:2)
您可以做的是添加允许从Window1
访问MainWindow
班级的公共属性/方法。
例如,如果要从Window1
清除MainWindow
中的列表,请将以下方法添加到Window1
:
public void ClearList()
{
// Clear your list here
}
当然,您需要MainWindow
了解Window1
,但顾名思义,我认为MainWindow
是主窗口,因此会创建Window1
实例
因此,您应该在Window1
中引用MainWindow
。在MainWindow
中,只需致电:
this.myWindow1.ClearList();
答案 1 :(得分:1)
问题出在哪里?我没有看到任何问题。
也许你想首先在MainWindow中保存一个Window1的引用。
Window1 window1 = new Window1();
window1.show();
从那里做你需要做的事:
window1.foo();
window1.bar();
window1.foobar = "Title";
编辑:一些澄清,因为OP似乎是一个初学者:
public class MainWindow
{
private Window1 window1;
public void CreateWindow()
{
window1 = new Window1();
window1.show();
}
private void DoStuffWithWindow1()
{
window1.foo();
window1.bar();
window1.foobar = "Title";
}
}