Example #1
0
        public CrashLogsViewModel()
        {
            var folder = Path.Combine(ServiceProvider.SettingsDir, "Crashes");

            if (Directory.Exists(folder))
            {
                CrashLogs = new ObservableCollection <FileContentItem>(Directory
                                                                       .EnumerateFiles(folder)
                                                                       .Select(FileName => new FileContentItem(FileName)));

                if (CrashLogs.Count > 0)
                {
                    SelectedCrashLog = CrashLogs[0];
                }
            }

            CopyToClipboardCommand = new DelegateCommand(() => SelectedCrashLog?.Content.WriteToClipboard());

            RemoveCommand = new DelegateCommand(() =>
            {
                if (SelectedCrashLog != null)
                {
                    if (File.Exists(SelectedCrashLog.FileName))
                    {
                        File.Delete(SelectedCrashLog.FileName);
                    }

                    CrashLogs.Remove(SelectedCrashLog);

                    SelectedCrashLog = CrashLogs.Count > 0 ? CrashLogs[0] : null;
                }
            });
        }
        private void OnRemoveExecute()
        {
            if (SelectedCrashLog != null)
            {
                if (File.Exists(SelectedCrashLog.FileName))
                {
                    File.Delete(SelectedCrashLog.FileName);
                }

                CrashLogs.Remove(SelectedCrashLog);

                SelectedCrashLog = CrashLogs.Count > 0 ? CrashLogs[0] : null;
            }
        }