using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace Tango.FSE.Procedures.Controls { /// /// Interaction logic for ObjectInTreeView.xaml /// public partial class ObjectInTreeView : UserControl { public ObjectInTreeView() { InitializeComponent(); } public object ObjectToVisualize { get { return (object)GetValue(ObjectToVisualizeProperty); } set { SetValue(ObjectToVisualizeProperty, value); } } public static readonly DependencyProperty ObjectToVisualizeProperty = DependencyProperty.Register("ObjectToVisualize", typeof(object), typeof(ObjectInTreeView), new PropertyMetadata(null, OnObjectChanged)); private static void OnObjectChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { TreeNode tree = TreeNode.CreateTree(e.NewValue); (d as ObjectInTreeView).TreeNodes = new List() { tree }; } public List TreeNodes { get { return (List)GetValue(TreeNodesProperty); } set { SetValue(TreeNodesProperty, value); } } public static readonly DependencyProperty TreeNodesProperty = DependencyProperty.Register("TreeNodes", typeof(List), typeof(ObjectInTreeView), new PropertyMetadata(null)); } }