protected virtual void ShowExportDialog()
                {
                        if (Listado.Items.Count == 0) {
                                Lfx.Workspace.Master.RunTime.Toast("No se puede imprimir o exportar el listado porque no contiene datos.", "Listado");
                                return;
                        }

                        using (Lfc.FormularioListadoExportar FormExportar = new Lfc.FormularioListadoExportar()) {
                                if (FormExportar.ShowDialog() == System.Windows.Forms.DialogResult.OK) {
                                        FormatoExportar Formato = FormExportar.SaveFormat;
                                        if (Formato == FormatoExportar.Imprimir) {
                                                this.OnPrint(false);
                                        } else if (Formato == FormatoExportar.ImprimirAvanzado) {
                                                this.OnPrint(true);
                                        } else {
                                                SaveFileDialog DialogoGuardar = new SaveFileDialog();
                                                DialogoGuardar.OverwritePrompt = true;
                                                DialogoGuardar.ValidateNames = true;
                                                DialogoGuardar.CheckPathExists = true;
                                                switch (Formato) {
                                                        case FormatoExportar.Html:
                                                                DialogoGuardar.DefaultExt = ".html";
                                                                DialogoGuardar.Filter = "Formato HTML|*.htm;*.html";
                                                                break;
                                                        case FormatoExportar.Excel:
                                                                DialogoGuardar.DefaultExt = ".xls";
                                                                DialogoGuardar.Filter = "Formato XML de Microsoft Excel|*.xls";
                                                                break;
                                                        case FormatoExportar.ExcelXml:
                                                                DialogoGuardar.DefaultExt = ".xls";
                                                                DialogoGuardar.Filter = "Formato de Microsoft Excel|*.xls";
                                                                break;
                                                }

                                                DialogoGuardar.FileName = this.Text.Replace(":", "");
                                                if (DialogoGuardar.ShowDialog() == DialogResult.OK) {
                                                        Lazaro.Pres.Spreadsheet.Workbook Workbook = this.ToWorkbook();
                                                        string FileName = DialogoGuardar.FileName;
                                                        try {
                                                                switch (Formato) {
                                                                        case FormatoExportar.Html:
                                                                                Workbook.SaveTo(FileName, Lazaro.Pres.Spreadsheet.SaveFormats.Html);
                                                                                break;
                                                                        case FormatoExportar.Excel:
                                                                                Workbook.SaveTo(FileName, Lazaro.Pres.Spreadsheet.SaveFormats.Excel);
                                                                                break;
                                                                        case FormatoExportar.ExcelXml:
                                                                                Workbook.SaveTo(FileName, Lazaro.Pres.Spreadsheet.SaveFormats.ExcelXml);
                                                                                break;
                                                                }
                                                        } catch (Exception ex) {
                                                                Lfx.Workspace.Master.RunTime.Toast("No se puede guardar el archivo. " + ex.Message, "Error");
                                                        }
                                                }
                                        }
                                }
                        }
                }
Beispiel #2
0
        protected override void ShowExportDialog()
        {
            if (Listado.Items.Count == 0)
            {
                Lfx.Workspace.Master.RunTime.Toast("No se puede imprimir o exportar el listado porque no contiene datos.", "Listado");
                return;
            }

            using (Lfc.FormularioListadoExportar FormExportar = new Lfc.FormularioListadoExportar())
            {
                if (FormExportar.ShowDialog() == System.Windows.Forms.DialogResult.OK)
                {
                    FormatoExportar Formato = FormExportar.SaveFormat;
                    if (Formato == FormatoExportar.Imprimir)
                    {
                        this.OnPrint(false);
                    }
                    else if (Formato == FormatoExportar.ImprimirAvanzado)
                    {
                        this.OnPrint(true);
                    }
                    else
                    {
                        SaveFileDialog DialogoGuardar = new SaveFileDialog();
                        DialogoGuardar.OverwritePrompt = true;
                        DialogoGuardar.ValidateNames   = true;
                        DialogoGuardar.CheckPathExists = true;
                        switch (Formato)
                        {
                        case FormatoExportar.Html:
                            DialogoGuardar.DefaultExt = ".html";
                            DialogoGuardar.Filter     = "Formato HTML|*.htm;*.html";
                            break;

                        case FormatoExportar.Excel:
                            DialogoGuardar.DefaultExt = ".xlsx";
                            DialogoGuardar.Filter     = "Microsoft Excel 2007-2013|*.xlsx";
                            break;
                        }

                        DialogoGuardar.FileName = this.Text.Replace(":", "");
                        if (DialogoGuardar.ShowDialog() == DialogResult.OK)
                        {
                            Lazaro.Pres.Spreadsheet.Workbook Workbook = this.ToWorkbook();
                            string FileName = DialogoGuardar.FileName;
                            this.OnExport(FileName, Formato);
                            try
                            {
                                switch (Formato)
                                {
                                case FormatoExportar.Html:
                                    Workbook.SaveTo(FileName, Lazaro.Pres.Spreadsheet.SaveFormats.Html);
                                    break;

                                case FormatoExportar.Excel:
                                    Workbook.SaveTo(FileName, Lazaro.Pres.Spreadsheet.SaveFormats.Excel);
                                    break;
                                }
                            }
                            catch (Exception ex)
                            {
                                Lfx.Workspace.Master.RunTime.Toast("No se puede guardar el archivo. " + ex.Message, "Error");
                            }
                        }
                    }
                }
            }
        }