private void DeleteItemClicked(NpcTreeViewItem selectedItem) { if (selectedItem == null) { return; } if (MessageBox.Show("Wirklich löschen?", ":o", MessageBoxButton.YesNo, MessageBoxImage.Question) != MessageBoxResult.Yes) { return; } if (selectedItem.IsDirectoryNode) { if (((DirectoryInfo)selectedItem.Tag).Name != References.OUT_FOLDER) { ((DirectoryInfo)selectedItem.Tag).Delete(); } else { MessageBox.Show("Root Verzeichnis kann nicht gelöscht werden"); } } else { ((FileInfo)selectedItem.Tag).Delete(); } ((NpcTreeViewItem)selectedItem.Parent).Items.Remove(selectedItem); }
private void OnTreeItemDoubleClicked(NpcTreeViewItem item) { if (!item.IsDirectoryNode) { LoadNpcFromFile(item.FullPath); } }
public NpcOverview(OverviewWM wm) { InitializeComponent(); DataContext = wm; var root = new NpcTreeViewItem(new DirectoryInfo(References.OUT_FOLDER), "*.json"); Tree.Items.Add(root); root.IsExpanded = true; Tree.ItemDoubleClicked += (sender, item) => TreeItemDoubleClicked?.Invoke(sender, item); }
private void NewFolderClicked(NpcTreeViewItem selectedItem) { if (selectedItem == null) { return; } var input = new InputDialog("Ordnernamen eingeben :)"); if (input.ShowDialog() != true) { return; } if (!selectedItem.IsDirectoryNode) { selectedItem = (NpcTreeViewItem)selectedItem.Parent; } CreateFolderNode(selectedItem, input.Input); }