public void AddItemShouldThrowExceptionWhenCollectionIsNull() { // When TestDelegate test = () => ObjectHelper.AddItem(null, new object()); // Then Assert.Throws <ArgumentNullException>(test); }
private void OnPasteItemHandler(dynamic context, dynamic arguments) { if (_clipboardNode != null) { var newParentNode = GetSelectedNode(false); if (newParentNode != null && newParentNode != _clipboardNode) { if (IsParentNode(_clipboardNode, newParentNode) == false) { var newParentItems = GetChildMenuItems(newParentNode); var oldParentItems = GetChildMenuItems(_clipboardNode.Parent); var clipboardItem = _clipboardNode.Tag; if (_copyMode == false) { // Перемещение элемента ObjectHelper.RemoveItem(oldParentItems, clipboardItem); ObjectHelper.AddItem(newParentItems, clipboardItem); // Перемещение элемента в дереве _clipboardNode.Parent = newParentNode; _treeView.RefreshItems(); } else { // Копирование элемента var copyItem = clipboardItem.Clone(); ObjectHelper.AddItem(newParentItems, copyItem); // Копирование элемента в дереве var copyNode = CreateMenuItemNode(copyItem, newParentNode); var childNodes = new List <object> { copyNode }; FillChildMenuItems(copyItem, copyNode, childNodes); childNodes.ForEach(node => _treeView.AddItem(node)); } _clipboardNode = null; InvokeUpdateItems(); } else { MessageBox.Show(Resources.MenuDesignerCannotMoveParentToChild, GetView().GetText(), MessageBoxButton.OK, MessageBoxImage.Warning); } } } }
private void OnAcceptedAddView(IDataSource childDataSource, object selectedNode) { var newItem = childDataSource.GetSelectedItem(); if (newItem != null) { // Добавление элемента в коллекцию var items = GetChildMenuItems(selectedNode); ObjectHelper.AddItem(items, newItem); // Добавление элемента в дерево var newItemNode = CreateMenuItemNode(newItem, selectedNode); _treeView.AddItem(newItemNode); _treeView.SetSelectedItem(newItemNode); InvokeUpdateItems(); } }
private void InsertNode(dynamic propertyNode) { // Выделенный узел var newParentNode = GetSelectedNode(false); // Добавление в родительский узел ObjectHelper.AddItem(newParentNode.Nodes, propertyNode); propertyNode.Parent = newParentNode; // Добавление в коллекцию дерева var childNodes = new List <object>(); FillChildNodes(propertyNode, childNodes); childNodes.ForEach(node => _treeView.AddItem(node)); // Выделение родительского узла _treeView.SetSelectedItem(newParentNode); _treeView.ExpandItem(newParentNode); InvokeValueChanged(); }