private void SetMerge() { IsEnabled = false; CParserGenericAdapter proccesor = new CParserGenericAdapter(); string path = CFileHelper.GetPathFromDialog(); if (string.IsNullOrWhiteSpace(path)) { IsEnabled = true; return; } IsLoading = true; SelectedTable.State = enFormState.EditTable; ThreadPool.QueueUserWorkItem(new WaitCallback((par) => { try { DataTable data = proccesor.GetDataTabletFromCSVFile(path); bool res = CTable.FillColumns(data, SelectedTable.Current, true); res &= CTable.FillRows(data, SelectedTable.Current); BeginInvoke(DispatcherPriority.Normal, () => { SelectedTable.IsAppenedSuccessfully = res; RaiseRefresh(); this.RaisePropertyChanged(() => this.SelectedTableView); }); } catch (Exception ex) { } ChangeState(false); })); }
private void OnAdd() { IsEnabled = false; CParserGenericAdapter proccesor = new CParserGenericAdapter(); string path = CFileHelper.GetPathFromDialog(); if (string.IsNullOrWhiteSpace(path)) { IsEnabled = true; return; } IsLoading = true; ThreadPool.QueueUserWorkItem(new WaitCallback((par) => { try { DataTable data = proccesor.GetDataTabletFromCSVFile(path); CTable table = CTable.Create(data); BeginInvoke(DispatcherPriority.Normal, () => { SelectedTable = new TableViewModel(table); SelectedTable.State = enFormState.Create; SelectedTable.Current.Status = Status.Added; this.Tables.Add(SelectedTable); RaiseRefresh(); this.RaisePropertyChanged(() => this.SelectedTableView); }); } catch (Exception ex) { } ChangeState(false); })); }