访问WPF用户控件属性

时间:2013-12-26 16:53:40

标签: wpf treeview controls

我在Winform C#应用程序中包含了一个WPF控件,现在我想访问该控件的一些属性。这是一个Treeview,我想得到这个: 这是XAML中的代码:

<TreeView Grid.Row="1" Grid.Column="0" Margin="5,5,5,5" Name="mytreeview" 
          BorderThickness="0" FontSize="12" FontFamily="Courier New"/>

我正在努力实现的目标:

//host3d is the integration object

  host3d.Controls["mytreeview"].Items.Add("test");

我收到一个错误,说控件不包含那个有意义的定义“Items”,我确信有办法访问treeview的方法......

1 个答案:

答案 0 :(得分:1)

我创建了一个WPF用户控件,并使用ElementHost控件在winform应用程序中托管我的wpf控件。然后我可以使用我的用户控件中的任何属性,如下所示

public Form1()
{
    InitializeComponent();
    UserControl1 control = new UserControl1();
    elementHost1.Child = control;

}

private void button1_Click(object sender, EventArgs e)
{
    UserControl1 control = elementHost1.Child as UserControl1;
    String names = string.Empty; ;
    foreach (var item in control.Patients1)
    {
        names += item.Name + "\n";
    }
    MessageBox.Show("Name: \n" + names);
}

如果您使用的是WPF,则可以将treeView绑定到集合,并从任何位置访问集合项。我已经绑定到患者列表,我可以直接访问它。