从另一个屏幕更改组件

布鲁诺

Tenhos 2窗体,其中一种是usercontrol,一种是普通窗口。所以我将该用户控件加载到我的窗口中。我想做的是在单击用户控件按钮时更改窗口中的值。

窗口 [用户控制]

当我单击用户控制按钮(例如“更改颜色窗口”)时,我会更改窗口的背景颜色。

这怎么可能?

如果我创建一个全局类并放置一个类型为 windows 的对象,我将能够访问它吗?

奥萨夫·拉希德

这很简单。有多种方法可以实现这一目标。我将列出简单的:

在 中创建一个事件UserControl,提出并收听它

在您的 中UserControl,创建一个public事件:

> 用户控件.Cs

public Event EventHandler MyEvent;
///raise the event
private void btn_Click(object sender, RoutedEventArgs e)
{
 MyEvent(this , e);
}

> Wndows.Cs

Usercontrol1.MyEvent += new System.EventHandler(this.MyMethod);

pirvate void MyMethod
{
 ////do stuff here 
}

使用GetWindow方法

您可以简单地使用GetWindow方法:

  private void btn_Click()
  {
  Window parent = Window.GetWindow(this);
  ///code here
  }

使用 VisualTreeHelper

这是一个可用于查找控件父级的函数。这是非常有用的,因为它不仅让你的窗口,但孩子的任何父如StackPanelGrid等。

 public static T FindParent<T>(DependencyObject child)where T : DependencyObject
{
DependencyObject parentObject = VisualTreeHelper.GetParent(child);
if (parentObject == null)
    return null;
T parent = parentObject as T;
if (parent != null)
    return parent;
else
    return FindParent<T>(parentObject);
}

////Call it like this :

 var parent = FindParent<Window>(this);

希望这可以帮助 :)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Angular 2在另一个组件上更改组件变量

来自分类Dev

如何从另一个组件更改组件状态?

来自分类Dev

从另一个组件修改组件的状态

来自分类Dev

从另一个布局更改屏幕

来自分类Dev

从另一个文件中的另一个组件更改一个组件的状态

来自分类Dev

从另一个文件中的另一个组件更改一个组件的状态

来自分类Dev

如何快速从一个屏幕更改另一个屏幕的颜色?

来自分类Dev

更改另一个组件中的状态

来自分类Dev

更改另一个组件/反应图标中的一个组件

来自分类Dev

绘制另一个组件

来自分类Dev

参考另一个组件

来自分类Dev

如何检测表单何时从一个屏幕更改为另一个屏幕

来自分类Dev

更改另一个组件时反应重新渲染组件

来自分类Dev

根据另一个组件的状态更改React组件可见性

来自分类Dev

在另一个屏幕上调整组件的大小

来自分类Dev

如何使这些组件在反应中导航到另一个屏幕?

来自分类Dev

如何在React Native中导航到类组件中的另一个屏幕

来自分类Dev

如何在React Native中导航到类组件中的另一个屏幕

来自分类Dev

如何在React Native中导航到类组件中的另一个屏幕

来自分类Dev

如何在React Native中从另一个功能组件更改一个功能组件的状态?

来自分类Dev

通过另一个屏幕会话处理屏幕

来自分类Dev

更改组件 0 时重置 UIPickerView 的第一个组件的值

来自分类Dev

Kivy-在另一个屏幕上更改滑块类的值

来自分类Dev

快速启动屏幕动画后更改为另一个View Controller

来自分类Dev

如何在屏幕尺寸上将html文件更改为另一个html文件?

来自分类Dev

页面上有2个React-Select组件-一个更改另一个的值

来自分类Dev

从另一个组件反应JS渲染组件

来自分类Dev

Cakephp组件内部另一个组件的性能

来自分类Dev

React:在另一个组件中使用组件

Related 相关文章

  1. 1

    Angular 2在另一个组件上更改组件变量

  2. 2

    如何从另一个组件更改组件状态?

  3. 3

    从另一个组件修改组件的状态

  4. 4

    从另一个布局更改屏幕

  5. 5

    从另一个文件中的另一个组件更改一个组件的状态

  6. 6

    从另一个文件中的另一个组件更改一个组件的状态

  7. 7

    如何快速从一个屏幕更改另一个屏幕的颜色?

  8. 8

    更改另一个组件中的状态

  9. 9

    更改另一个组件/反应图标中的一个组件

  10. 10

    绘制另一个组件

  11. 11

    参考另一个组件

  12. 12

    如何检测表单何时从一个屏幕更改为另一个屏幕

  13. 13

    更改另一个组件时反应重新渲染组件

  14. 14

    根据另一个组件的状态更改React组件可见性

  15. 15

    在另一个屏幕上调整组件的大小

  16. 16

    如何使这些组件在反应中导航到另一个屏幕?

  17. 17

    如何在React Native中导航到类组件中的另一个屏幕

  18. 18

    如何在React Native中导航到类组件中的另一个屏幕

  19. 19

    如何在React Native中导航到类组件中的另一个屏幕

  20. 20

    如何在React Native中从另一个功能组件更改一个功能组件的状态?

  21. 21

    通过另一个屏幕会话处理屏幕

  22. 22

    更改组件 0 时重置 UIPickerView 的第一个组件的值

  23. 23

    Kivy-在另一个屏幕上更改滑块类的值

  24. 24

    快速启动屏幕动画后更改为另一个View Controller

  25. 25

    如何在屏幕尺寸上将html文件更改为另一个html文件?

  26. 26

    页面上有2个React-Select组件-一个更改另一个的值

  27. 27

    从另一个组件反应JS渲染组件

  28. 28

    Cakephp组件内部另一个组件的性能

  29. 29

    React:在另一个组件中使用组件

热门标签

归档