public IViewContent CreateContentForFile(OpenedFile file) { if (file.IsDirty) { var cmd = new ReportWizardCommand(); cmd.Run(); if (!cmd.Canceled) { var reportModel = cmd.ReportModel; var xml = CreateFormSheetFromModel.ToXml(reportModel); var doc = new XmlDocument(); doc.LoadXml(xml.ToString()); var ar = XmlToArray(doc); file.SetData(ar); } else { LoggingService.Info("ReportWizard canceled"); return(null); } } var viewCmd = new CreateDesignerCommand(file); viewCmd.Run(); LoggingService.Info("DesignerBinding -> Designer started"); return(viewCmd.DesignerView); }
public override void Execute(object parameter) { if (parameter == null) { throw new ArgumentNullException("parameter"); } FileTemplateResult result = (FileTemplateResult)parameter; var openedFile = result.NewOpenedFiles.Single(); var wizardViewModel = new ReportWizardContext(); var reportWizard = new ICSharpCode.Reporting.Addin.ReportWizard.Dialog.ReportWizard(wizardViewModel); reportWizard.ShowDialog(); if (reportWizard.DialogResult.HasValue && reportWizard.DialogResult.Value) { LoggingService.Info("ReportWizard - CreateReport"); var rg = new ReportGenerator(); rg.Generate(wizardViewModel); string xml = CreateFormSheetFromModel.ToXml(rg.ReportModel).ToString(); openedFile.SetData(Encoding.UTF8.GetBytes(xml)); if (!openedFile.IsUntitled) { openedFile.SaveToDisk(); } } else { LoggingService.Info("ReportWizard canceled"); // HACK: cancel opening the file by clearing the file list openedFile.CloseIfAllViewsClosed(); result.NewOpenedFiles.Clear(); result.NewFiles.Clear(); } }
public IViewContent CreateContentForFile(OpenedFile file) { if (file.IsDirty) { var reportModel = ReportModelFactory.Create(); var reportFactory = new CreateFormSheetFromModel(); var xml = reportFactory.ToXml(reportModel); var doc = new XmlDocument(); doc.LoadXml(xml.ToString()); var ar = XmlToArray(doc); file.SetData(ar); } var viewCmd = new CreateDesignerCommand(file); viewCmd.Run(); LoggingService.Info("return DesignerView"); return(viewCmd.DesignerView); }