using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Shapes; using System.Collections.ObjectModel; using System.IO; namespace MultiLayout.MainEdit { /// /// Window_Load.xaml 的交互逻辑 /// public partial class WdLoadFile : FLY.ControlLibrary.WindowBigClose { ObservableCollection mList = new ObservableCollection(); public WdLoadFile() { InitializeComponent(); Init(); } public void Init() { this.listview_profile.ItemsSource = mList; //查找 layout/graphcustoms 下的全部文件名 string dirPath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustoms"); DirectoryInfo directoryInfo = new DirectoryInfo(dirPath); if (!directoryInfo.Exists) { return; } var files = directoryInfo.GetFiles("*.json"); foreach (var file in files) { mList.Add(System.IO.Path.GetFileNameWithoutExtension(file.Name)); } } private void button_read_Click(object sender, RoutedEventArgs e) { if (listview_profile.SelectedItem != null) { string strTipRebootForExecute = "需要重启,才能生效"; if (FLY.ControlLibrary.MyMessageBox.Show(strTipRebootForExecute) == true) { string filename = listview_profile.SelectedItem as string; string filePath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustoms", filename + ".json"); string destPath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustom.json"); File.Copy(filePath, destPath, true); System.Windows.Forms.Application.Restart(); Application.Current.Shutdown(); } return; } } private void button_del_Click(object sender, RoutedEventArgs e) { if (listview_profile.SelectedItem != null) { string filename = listview_profile.SelectedItem as string; string filePath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustoms", filename + ".json"); File.Delete(filePath); mList.Remove(filename); FLY.ControlLibrary.Window_Tip.Show("删除成功", filename, TimeSpan.FromSeconds(2)); } } private void button_save_Click(object sender, RoutedEventArgs e) { WdSaveFile w = new WdSaveFile(); w.Owner = FLY.ControlLibrary.COMMON.GetWindow(this); if (w.ShowDialog() == true) { if (mList.Contains(w.FileName)) { if (FLY.ControlLibrary.MyMessageBox.Show("文件已经存在,是否覆盖?")!=true) { return; } } string dirPath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustoms"); if (!Directory.Exists(dirPath)) Directory.CreateDirectory(dirPath); string filename = w.FileName; string destPath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustoms", filename + ".json"); string srcPath = System.IO.Path.Combine(FlyLayout.BasePath, "graphcustom.json"); File.Copy(srcPath, destPath, true); if (!mList.Contains(w.FileName)) { mList.Add(filename); } FLY.ControlLibrary.Window_Tip.Show("保存成功", filename, TimeSpan.FromSeconds(2)); } } } }