如何制作usercontrol现有实例的对象实例?
public partial class Rfid : UserControl
这是您将如何使用窗口进行操作?
public partial class MainWindow : Window
MainWindow my = Application.Current.Windows.OfType<MainWindow>().FirstOrDefault();
Application.Current.Windows
是您应用程序中当前存在的所有窗口的集合。您没有"做"任何事情。窗口是一个对象。窗口实例是窗口的实例。您正在从收藏中提取引用。
MainWindow my
在您的问题中是对MainWindow
实例的引用。
没有这样的所有用户控件或任何控件的收集。您可以立即获得窗户的儿童控制,但是随后您必须递归地透过其孩子,他们的孩子等等。
在定义用户控件实例的XAML中,给它一个x:Name
属性。然后,在父母中,您可以用名称参考它。
mainwindow.xaml
<local:Rfid
x:Name="FooBar"
MyProperty="Some Value"
/>
mainwindow.xaml.cs
这只是一个例子,因为您没有说出您想处理什么,或者为什么或原因。
public void SomeButton_Click(Object sender, RoutedEventArgs e)
{
FooBar.MyProperty = "Some other value";
}
当然,您真的应该使用MVVM进行此操作。
如何制作usercontrol现有实例的对象实例?
就像您将创建任何其他类的实例:
Rfid obj = new Rfid();
或xaml:
<local:Rfid />
两者都在运行时创建一个Rfid
(UserControl
(类的实例。
这是您将如何使用窗口进行操作?
否。该引用是对MainWindow
类已经存在的实例,该实例从Application.Current.Windows
Collection属性引用。它没有构造任何新的窗口对象。