public static MarkDownDir GetMarkDownDir(string dirPath) { if (!Directory.Exists(dirPath)) { return(null); } DirectoryInfo info = new DirectoryInfo(dirPath); FileInfo[] files = info.GetFiles("*.md", SearchOption.TopDirectoryOnly); MarkDownDir dir = new MarkDownDir() { FullPath = dirPath, DisplayName = info.Name, MarkDownFiles = new List <MarkDownFile>() }; for (int i = 0; i < files.Length; i++) { MarkDownFile mf = new MarkDownFile() { Name = files[i].Name, FullName = files[i].FullName }; dir.MarkDownFiles.Add(mf); } return(dir); }
private void MenuItem_Click(object sender, RoutedEventArgs e) { MarkDownDir dir = (sender as FrameworkElement).DataContext as MarkDownDir; if (dir != null) { this.mv.RemoveDir(dir); } }
public void RemoveDir(MarkDownDir dir) { if (dir != null) { for (int i = 0; i < DirList.Count; i++) { if (DirList[i].FullPath == dir.FullPath) { DirList.RemoveAt(i); break; } } } }
public void AddDir(MarkDownDir dir) { bool hasAdd = false; for (int i = 0; i < DirList.Count; i++) { if (DirList[i].FullPath == dir.FullPath) { DirList.RemoveAt(i); DirList.Insert(i, dir); hasAdd = true; break; } } if (!hasAdd) { DirList.Add(dir); } }
private void Folder_Select_Button_Click(object sender, RoutedEventArgs e) { FolderBrowserDialog dialog = new FolderBrowserDialog(); dialog.SelectedPath = mv.LastSelectPath; dialog.Description = "选择需要设置的md文件目录"; DialogResult result = dialog.ShowDialog(); if (result == System.Windows.Forms.DialogResult.Cancel) { return; } this.mv.LastSelectPath = dialog.SelectedPath; string dirPath = dialog.SelectedPath.Trim(); dir = Helper.GetMarkDownDir(dirPath); this.tb_folder.Text = dir.FullPath; this.tb_display.Text = dir.DisplayName; this.list_file.ItemsSource = dir.MarkDownFiles; }