示例#1
0
        private TreeItem CreateNode(IModuleViewModel model)
        {
            TreeItem node = new TreeItem();

            model.SubModulesChanged += () => UpdateNode(model, node);
            UpdateNode(model, node);
            return(node);
        }
示例#2
0
        private void UpdateNode(IModuleViewModel model, ITreeItem node)
        {
            TreeItem treeItem = (TreeItem)node;

            treeItem.Text = model.ModuleName;
            treeItem.Tag  = model;
            nodeMapper.UpdateCollection(model.GetSubModules(), treeItem.Children);
            Tree.RefreshItem(treeItem);
        }
示例#3
0
 private ITreeItem FindTreeItem(TreeItemCollection nodes, IModuleViewModel module)
 {
     foreach (ITreeItem treeNode in nodes)
     {
         TreeItem node = (TreeItem)treeNode;
         if (node == null)
         {
             continue;
         }
         if (node.Tag == module)
         {
             return(node);
         }
         ITreeItem matchingChild = FindTreeItem(node.Children, module);
         if (matchingChild != null)
         {
             return(matchingChild);
         }
     }
     return(null);
 }
示例#4
0
        private void SelectNode(IModuleViewModel module)
        {
            ITreeItem treeItem = FindTreeItem(treeNodes, module);

            if (Tree.SelectedItem != treeItem)
            {
                Tree.RefreshData();
                Tree.SelectedItem = treeItem;
                Tree.RefreshData();
                if (treeItem != null)
                {
                    ITreeItem topParent = treeItem;
                    ITreeItem parent    = treeItem.Parent;
                    while (parent != null)
                    {
                        topParent       = parent;
                        parent.Expanded = true;
                        parent          = parent.Parent;
                    }
                    Tree.RefreshItem(topParent);
                }
            }
        }
		public ModuleView(IModuleViewModel viewModel)
		{
			InitializeComponent();
			viewModel.View = this;
		}
示例#6
0
        public ModuleView(IModuleViewModel viewModel)
        {
            InitializeComponent();

            DataContext = viewModel;
        }