private void createRecordStructureXmlToolStripMenuItem_Click(object sender, EventArgs e) { var p = GetPluginFromNode(PluginTree.SelectedRecord); var builder = new RecordBuilder(); builder.FormLookup = GetRecordByID; builder.StringLookup = LookupFormStrings; builder.CancelAction = () => { return(backgroundWorker1.CancellationPending); }; builder.UpdateProgressAction = UpdateBackgroundProgress; StartBackgroundWork( () => { builder.Start(p); }, () => { if (!IsBackroundProcessCanceled()) { using (var dlg = new SaveFileDialog()) { dlg.InitialDirectory = Path.GetTempPath(); dlg.FileName = "RecordStructure.xml"; dlg.OverwritePrompt = false; if (dlg.ShowDialog() == DialogResult.OK) { var xs = new XmlSerializer(typeof(Records)); using (StreamWriter fs = File.CreateText(dlg.FileName)) { xs.Serialize(fs, builder.Complete()); } } } } } ); }
private void createRecordStructureXmlToolStripMenuItem_Click(object sender, EventArgs e) { var p = this.GetPluginFromNode(this.PluginTree.SelectedRecord); var builder = new RecordBuilder(); builder.FormLookup = this.GetRecordByID; builder.StringLookup = this.LookupFormStrings; builder.CancelAction = () => { return this.backgroundWorker1.CancellationPending; }; builder.UpdateProgressAction = this.UpdateBackgroundProgress; this.StartBackgroundWork( () => builder.Start(p), () => { if (!this.IsBackroundProcessCanceled()) { using (var dlg = new SaveFileDialog()) { //dlg.InitialDirectory = Path.GetTempPath(); dlg.FileName = "RecordStructure.xml"; dlg.OverwritePrompt = false; if (dlg.ShowDialog() == DialogResult.OK) { var xs = new XmlSerializer(typeof (Records)); using (StreamWriter fs = File.CreateText(dlg.FileName)) { xs.Serialize(fs, builder.Complete()); } } } } }); }