private void FolderAddButton_Click(object sender, RoutedEventArgs e) { var folderBrowser = new System.Windows.Forms.FolderBrowserDialog(); if (folderBrowser.ShowDialog() == System.Windows.Forms.DialogResult.OK /*screen.ShowDialog() == true*/) { //foreach (var file in screen.FileNames) //{ // if (MyAppItem.IsNewPathCanAdd(file,_fileList)) // khi nao can add tu nhieu noi khac nhau, add nhieu lan // { // ItemFile newFile = new ItemFile(file, _methodList); // _fileList.Add(newFile); // consoleText.Text += $"added {file}\n"; // } //} _folderList.Clear(); string folderPath = folderBrowser.SelectedPath; foreach (var folder in Directory.GetDirectories(folderPath)) { ItemFolder newFolder = new ItemFolder(folder, _methodList, _folderList); //if (!MyAppItem.IsNewPathCanAdd(file, _fileList)) // khi nao can add tu nhieu noi khac nhau, add nhieu lan //{ // foreach(var item in _fileList) // { // if (item.FullPath == newFile.FullPath) // { // item.Error = "Already in list"; // break; // } // } //} //else //{ // _fileList.Add(newFile); //} if (Directory.Exists(folder)) { _folderList.Add(newFolder); } else { } } } }
void RouteItem(Item item, IDataObject data = null) { if (ItemFolder.ContainsKey(item)) { ShowFolder(item); } else if (item.Type == ItemType.BackButton) { ShowFolder(null, true); } else if (item.Key.StartsWith("$")) { ExecutePluginItem(item, data); } else { ExecuteProcessItem(item, data); } }