private void task13_Click(object sender, Xceed.SmartUI.SmartItemClickEventArgs e) { BatchExporter be = new BatchExporter(); be.mainInit(null); be.Show(); be = null; }
public BatchExportSettingsViewModel(BatchExporter batchExporter) : base(batchExporter) { Settings = batchExporter.Settings; PresetViewModels.Select(Settings.Preset); if (String.IsNullOrEmpty(FileName)) { FileName = String.Format("{{{0}}}_{{{1}}}_{{{2}}}", Strings.Workbook, Strings.Worksheet, Strings.Index); } Scope.PropertyChanged += Scope_PropertyChanged; Objects.PropertyChanged += Objects_PropertyChanged; Layout.PropertyChanged += Layout_PropertyChanged; UpdateStates(); }
public void BatchExport( BatchExportScope scope, BatchExportObjects objects, BatchExportLayout layout, int expectedNumberOfFiles) { // ExcelInstance.Application.Visible = true; Workbook wb = Instance.Default.CreateWorkbook(3); Helpers.CreateSomeCharts(wb.Worksheets[1], 1); Helpers.CreateSomeCharts(wb.Worksheets[2], 2); Helpers.CreateSomeCharts(wb.Worksheets[3], 3); Helpers.CreateSomeShapes(wb.Worksheets[1], 3); Helpers.CreateSomeShapes(wb.Worksheets[2], 2); Helpers.CreateSomeShapes(wb.Worksheets[3], 1); wb.Charts.Add(After: wb.Sheets[wb.Sheets.Count]); wb.Sheets[1].Activate(); BatchExportSettings settings = new BatchExportSettings(); settings.Path = Path.Combine(Path.GetTempPath(), Path.GetRandomFileName()); Directory.CreateDirectory(settings.Path); settings.FileName = "{workbook}_{worksheet}_{index}"; settings.Preset = new Preset(FileType.Png, 300, ColorSpace.Rgb); settings.Layout = layout; settings.Objects = objects; settings.Scope = scope; BatchExporter exporter = new BatchExporter(settings); BatchExportSettingsViewModel vm = new BatchExportSettingsViewModel(exporter); bool finished = false; bool abort = false; vm.ProcessFinishedMessage.Sent += (sender, args) => { finished = true; }; vm.StartProcess(); Timer t = new Timer((obj) => abort = true, null, 8000, Timeout.Infinite); while (!finished && !abort) { ; } t.Dispose(); Assert.IsFalse(abort, "Export progress did not finish, timeout reached."); Assert.AreEqual(expectedNumberOfFiles, Directory.GetFiles(settings.Path).Length); Directory.Delete(settings.Path, true); }