コード例 #1
0
        private void UpdateTreeViewItemsState(MyTreeViewItem treeViewItem, MyTreeViewItemUpdateStateFlag updateFlags)
        {
            int itemsCount = treeViewItem.GetItemCount();

            for (int i = 0; i < itemsCount; i++)
            {
                UpdateTreeViewItemsState(treeViewItem.GetItem(i), updateFlags);
            }

            if (treeViewItem.Tag != null && treeViewItem.Tag is MyObjectToBuild)
            {
                UpdateTreeViewItemState(treeViewItem, updateFlags);
            }
        }
コード例 #2
0
        protected void TryExpand(StringBuilder[] nodePath)
        {
            MyTreeViewItem item = null;

            for (int i = 0; i < nodePath.Length; i++)
            {
                if (item == null)
                {
                    item = m_addObjectTreeView.GetItem(nodePath[i]);
                }
                else
                {
                    item = item.GetItem(nodePath[i]);
                }

                if (item != null && item.GetItemCount() > 0)
                {
                    item.IsExpanded = true;
                }
            }
        }
コード例 #3
0
        private MyTreeViewItem GetTreeViewItem(MyTreeViewItem treeViewItem, MyObjectToBuild objectToBuild)
        {
            MyTreeViewItem result = null;

            if (treeViewItem.Tag is MyObjectToBuild && ((MyObjectToBuild)treeViewItem.Tag).IsSame(objectToBuild))
            {
                result = treeViewItem;
            }
            else
            {
                int itemsCount = treeViewItem.GetItemCount();
                for (int i = 0; i < itemsCount; i++)
                {
                    result = GetTreeViewItem(treeViewItem.GetItem(i), objectToBuild);
                    if (result != null)
                    {
                        break;
                    }
                }
            }
            return(result);
        }