如何制作UserControl现有实例的对象实例



如何制作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属性引用。它没有构造任何新的窗口对象。

最新更新