он внезапно перестал отображать пдф документ и я не знаю почему но коммит надо сделать

This commit is contained in:
the 2024-06-25 14:27:20 +04:00
parent 424703e397
commit 933a3bf3ea
3 changed files with 30 additions and 15 deletions

View File

@ -153,14 +153,11 @@ namespace WinFormsApp
MessageBox.Show("Выберите одну поставку для формирования отчета", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); MessageBox.Show("Выберите одну поставку для формирования отчета", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
return; return;
} }
using var dialog = new SaveFileDialog { Filter = "pdf|*.pdf" };
if (dialog.ShowDialog() == DialogResult.OK)
{
try try
{ {
_reportLogic.SaveSuppliesToPdfFile(new ReportBindingModel _reportLogic.SaveSuppliesToPdfFile(new ReportBindingModel
{ {
FileName = dialog.FileName, FileName = $"supplyreport{dataGridView.SelectedRows[0].Cells["Id"].Value}.pdf",
Date = (DateTime)dataGridView.SelectedRows[0].Cells["Date"].Value, Date = (DateTime)dataGridView.SelectedRows[0].Cells["Date"].Value,
SupplyId = (Guid)dataGridView.SelectedRows[0].Cells["Id"].Value SupplyId = (Guid)dataGridView.SelectedRows[0].Cells["Id"].Value
}); });
@ -172,22 +169,24 @@ namespace WinFormsApp
_logger.LogError(ex, "Ошибка сохранения отчета о поставке"); _logger.LogError(ex, "Ошибка сохранения отчета о поставке");
MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); MessageBox.Show(ex.Message, "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error);
} }
}
} }
private void buttonPrintReport_Click(object sender, EventArgs e) private void buttonPrintReport_Click(object sender, EventArgs e)
{ {
var dialog = new OpenFileDialog(); if (dataGridView.SelectedRows.Count != 1) return;
if (dialog.ShowDialog() == DialogResult.OK) var service = Program.ServiceProvider?.GetService(typeof(FormPreviewPDF));
if (service is FormPreviewPDF form)
{ {
var service = Program.ServiceProvider?.GetService(typeof(FormPreviewPDF)); var src = $"supplyreport{dataGridView.SelectedRows[0].Cells["Id"].Value}.pdf";
if (service is FormPreviewPDF form) if (!File.Exists(src))
{ {
form.src = dialog.FileName; MessageBox.Show("Отчёт о поставке не был найден. Сначала сформируйте отчёт по выбранной поставке.", "Ошибка");
if (form.ShowDialog() == DialogResult.OK) return;
{ }
IronPrint.Printer.PrintAsync(dialog.FileName); form.src = System.IO.Path.GetFullPath(src);
} if (form.ShowDialog() == DialogResult.OK)
{
IronPrint.Printer.PrintAsync(src);
} }
} }
} }

View File

@ -39,13 +39,14 @@
// //
// axAcropdf // axAcropdf
// //
axAcropdf.Dock = DockStyle.Fill; axAcropdf.Dock = DockStyle.Top;
axAcropdf.Enabled = true; axAcropdf.Enabled = true;
axAcropdf.Location = new Point(0, 0); axAcropdf.Location = new Point(0, 0);
axAcropdf.Name = "axAcropdf"; axAcropdf.Name = "axAcropdf";
axAcropdf.OcxState = (AxHost.State)resources.GetObject("axAcropdf.OcxState"); axAcropdf.OcxState = (AxHost.State)resources.GetObject("axAcropdf.OcxState");
axAcropdf.Size = new Size(478, 576); axAcropdf.Size = new Size(478, 576);
axAcropdf.TabIndex = 0; axAcropdf.TabIndex = 0;
axAcropdf.Enter += axAcropdf_Enter;
// //
// panel1 // panel1
// //
@ -66,6 +67,7 @@
buttonCancel.TabIndex = 1; buttonCancel.TabIndex = 1;
buttonCancel.Text = "Отмена"; buttonCancel.Text = "Отмена";
buttonCancel.UseVisualStyleBackColor = true; buttonCancel.UseVisualStyleBackColor = true;
buttonCancel.Click += buttonCancel_Click;
// //
// buttonPrint // buttonPrint
// //

View File

@ -27,6 +27,20 @@ namespace WinFormsApp
private void FormPreviewPDF_Load(object sender, EventArgs e) private void FormPreviewPDF_Load(object sender, EventArgs e)
{ {
axAcropdf.src = src; axAcropdf.src = src;
axAcropdf.LoadFile(src);
axAcropdf.setView("Fit");
axAcropdf.Show();
}
private void buttonCancel_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
Close();
}
private void axAcropdf_Enter(object sender, EventArgs e)
{
} }
} }
} }