c# - 从另一个屏幕更改组件
问题描述
Tenhos 2 窗体,其中一个是用户控件,一个是普通窗口。所以我将该用户控件加载到我的窗口中。我想做的是在单击用户控件按钮时更改窗口中的值。
窗口 [用户控制]
当我单击用户控制按钮时,例如“更改颜色窗口”,我更改了窗口的背景颜色。
这怎么可能?
如果我创建一个全局类并放置一个 windows 类型的对象,我将能够访问它吗?
解决方案
加载后,您可以UserControl
使用该Window.GetWindow
方法从 a 获取对父窗口的引用:UserControl
public partial class UserControl1 : UserControl
{
public UserControl1()
{
InitializeComponent();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
Window parentWindow = Window.GetWindow(this);
if (parentWindow != null)
parentWindow.Background = Brushes.Yellow;
}
}
推荐阅读
- typescript - 如何使用 jest 在模拟响应中获取响应状态?
- sql-server - SQL 语法 1.* 这是什么意思?
- java - TestContainers PostgreSQLContainer 与 Kotlin 单元测试:“没有足够的信息来推断类型变量 SELF”
- javascript - 函数对象和 ES 模块的作用域问题
- javascript - 如何忽略表单中下拉选择元素的序列化
- python - tkinter中的扭曲文本
- python - 如何在已安装的应用程序中使用 PRAW
- php - 无法从 php mac 执行长时间运行的 python 脚本
- javascript - 从父窗口关闭由表单提交打开的子窗口,目标=“_blank”
- c# - 在 Xamarin 中每 20 分钟提出一个方法