private void TsbSaveViewsClick(object sender, EventArgs e) { tsbPublishEntity.Enabled = false; tsbPublishAll.Enabled = false; tsbSaveViews.Enabled = false; tsbLoadEntities.Enabled = false; var targetViews = lvTargetViews.CheckedItems.Cast<ListViewItem>().Select(i => (Entity)i.Tag).ToList(); var sourceView = (Entity)lvSourceViews.SelectedItems.Cast<ListViewItem>().First().Tag; WorkAsync("Saving views...", evt => { var args = (object[])evt.Argument; evt.Result = ViewHelper.PropagateLayout((Entity)args[0], (List<Entity>)args[1], Service); }, evt => { if (((List<Tuple<string, string>>)evt.Result).Count > 0) { var errorDialog = new ErrorList((List<Tuple<string, string>>)evt.Result); errorDialog.ShowDialog(); } tsbPublishEntity.Enabled = true; tsbPublishAll.Enabled = true; tsbSaveViews.Enabled = true; tsbLoadEntities.Enabled = true; }, new object[] { sourceView, targetViews }); }
private void BwTransferViewsWorkerCompleted(object sender, RunWorkerCompletedEventArgs e) { CommonDelegates.SetCursor(this, Cursors.Default); Controls.Remove(informationPanel); if (e.Result == null) return; if (((List<Tuple<string, string>>)e.Result).Count > 0) { var errorDialog = new ErrorList((List<Tuple<string, string>>)e.Result); errorDialog.ShowDialog(); } else { MessageBox.Show("Selected views have been successfully transfered!", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information); } }