WPF获取MainWindow实例
在其他类中获取MainWindow实例,获取其控件,改变其控件属性等,代码如下:
_mainWindow = Application.Current.Windows.Cast<Window>().FirstOrDefault(Window => Window is MainWindow) as MainWindow;
例如在ConfigureViewModel中改变MainWindow中的某个TextBox控件,Name="T1"的Text属性:
using System.Windows;// 注意引入命名空间
namespace Test.ViewModels
{
class ConfigureViewModel
{
// 先注册
private MainWindow _mainWindow;
public ConfigureViewModel()
{
// 获取实例
_mainWindow = Application.Current.Windows.Cast<Window>().FirstOrDefault(Window => Window is MainWindow) as MainWindow;
}
/******* Comamnd *******/
public void Test ()
{
_mainWindow.T1.Text="Hello";// 获取MainWindow中的T1对象的Text属性值。
// T1 为TextBox控件
}
}
}
标签:控件,mainWindow,MainWindow,获取,Window,实例,WPF,T1,MainWindows
From: https://www.cnblogs.com/Hanwen680/p/17550540.html