Beispiel #1
0
        protected override void InsertItem(int index, NodeControl item)
        {
            if (item == null)
            {
                throw new ArgumentNullException("item");
            }

            if (item.Parent != _tree)
            {
                if (item.Parent != null)
                {
                    item.Parent.NodeControls.Remove(item);
                }
                base.InsertItem(index, item);
                item.AssignParent(_tree);
                _tree.FullUpdate();
            }
        }
Beispiel #2
0
        protected override void RemoveItem(int index)
        {
            NodeControl value = this[index];

            value.AssignParent(null);

            base.RemoveItem(index);

            _tree.FullUpdate();
        }
Beispiel #3
0
        public override void MouseDown(TreeNodeAdvMouseEventArgs args)
        {
            if (args.Button == MouseButtons.Left)
            {
                args.Handled = true;

                if (args.Node.CanExpand)
                {
                    args.Node.IsExpanded = !args.Node.IsExpanded;
                    // fixed by wj32
                    _tree.FullUpdate();
                }
            }
        }