C# Application.OpenForms[]用于WPF的替代

C# Application.OpenForms[]用于WPF的替代,c#,wpf,winforms,C#,Wpf,Winforms,我试图将变量值从一个WPFform1传递到另一个WPFform2。两个表单同时打开 但是我没有发现任何类似于Application.OpenForms的方法可用于WinForms应用程序 有人向我推荐了这个链接: 使用此链接,我只能知道打开的窗口。有没有办法从form1到form2访问变量名age的值?公开要通过公共属性访问的字段: public partial class Window1 : Window { private int _age; public int Age

我试图将变量值从一个WPF
form1
传递到另一个WPF
form2
。两个表单同时打开

但是我没有发现任何类似于
Application.OpenForms
的方法可用于WinForms应用程序

有人向我推荐了这个链接:


使用此链接,我只能知道打开的窗口。有没有办法从
form1
form2
访问变量名
age
的值?

公开要通过公共属性访问的字段:

public partial class Window1 : Window
{
    private int _age;
    public int Age
    {
        get { return _age; }
        set { _age = value; }
    }

    public Window1()
    {
        InitializeComponent();
    }
}
然后,如果窗口实例已创建并显示在屏幕上,则可以从类似这样的另一个类访问它:

Window1 window = Application.Current.Windows.OfType<Window1>().FirstOrDefault();
if(window != null)
{
    int age = window.Age;
}
Window1 window=Application.Current.Windows.OfType().FirstOrDefault();
如果(窗口!=null)
{
int age=window.age;
}

Application.Current.Windows
关于如何在表单之间传递数据的文章很多很多很多。有许多可能的解决方案,如何做到这一点取决于个人喜好。例如,对于典型的需求,我不会使用打开的表单或窗口列表或类似的东西在表单之间传递数据。谢谢。使用上述方法解决的问题