制作 UserControl 静态 WPF
Making a UserControl static WPF
我有一个名为 MyApp
的应用程序。
我还有下面两个UserControls
:
1) UC1
.
2) UC2
- 仅包含 ListBox
.
的 UserControl
UC1
和 UC2
都在 MyApp
中被引用。 UC2
也在 UC1
中引用。
我希望将 UC2
视为 Logger
。因此,我想从 UC1
和 MyApp
静态访问 UC2
的 LisBox
。我想将它放在 MyApp
的主要 window 上,但可以从引用 MyApp
.
的所有项目访问它
我试图使 UC2
静态化,但运气不佳。
这可能吗?
用户控件并没有真正为此用途定义,因为它们包含需要实例化的图形元素。在实例化之前,您无法访问您的列表框。这就是为什么您需要普通构造函数(使用 InitializeComponent()),然后需要一个静态 属性 来管理您的列表框。
但是,更好的解决方案是使用静态 class 作为记录器,并将您的用户控件绑定到此 class(将您的列表框绑定到附加的记录器 属性)。
我有一个名为 MyApp
的应用程序。
我还有下面两个UserControls
:
1) UC1
.
2) UC2
- 仅包含 ListBox
.
UserControl
UC1
和 UC2
都在 MyApp
中被引用。 UC2
也在 UC1
中引用。
我希望将 UC2
视为 Logger
。因此,我想从 UC1
和 MyApp
静态访问 UC2
的 LisBox
。我想将它放在 MyApp
的主要 window 上,但可以从引用 MyApp
.
我试图使 UC2
静态化,但运气不佳。
这可能吗?
用户控件并没有真正为此用途定义,因为它们包含需要实例化的图形元素。在实例化之前,您无法访问您的列表框。这就是为什么您需要普通构造函数(使用 InitializeComponent()),然后需要一个静态 属性 来管理您的列表框。
但是,更好的解决方案是使用静态 class 作为记录器,并将您的用户控件绑定到此 class(将您的列表框绑定到附加的记录器 属性)。