Auto Print Dialog
Добавлено: 11 мар 2022, 10:43
Добрый день.
У нас есть ASP.Net проект в котором ранее использовался Stimulsoft.Report.Web 2013.1.16
Запуск страницы там происходил так:
Здесь надо обратить внимание на последний метод stiViewer.PrintToPdf()
Это было сделано для того, чтобы пользователь сразу после загрузки отчета имел на экране диалог печати.
Сейчас проект переделан под Stimulsoft.Report.Web 2021.4.4
Такого метода у вьюера уже нет. И теперь отчет появляется в браузере и просто ждет реакции пользователя.
Юзер недоволен тем, что ему приходится лишний раз ворочать тяжелую мышь и нажимать сначала меню Print, потом Print Pdf, а потом еще и Печать в окне диалога.
Есть ли возможность вываливать диалог печати кодом, как было ранее?
И второй вопрос по той же теме.
Я попытался воспользоваться методой описаной у вас ч\з StiReportResponse.
Т.е. :
В этом случае диалог печати действительно вываливается. Но это сопровождается рядом досадных побочных эффектов.
Диалог печати сопровождается появлением на заднем фоне уродливой страницы с отчетом вместо того, чтобы появляться во всплывающем окне на фоне текущей страницы. Уродливость ее в том, что она смещена влево и по сути страница не нужна, т.к. отчет хорошо виден в окне диалога печати. После печати пользователю нужно нажимать в браузере Back, тобы вернуться на исходную страницу, что его сильно утомляет.
StiReportResponse.PrintAsPdf(rpt) я тоже пробовал. Вылядит аналогично.
Можно ли избежать этого? Если нельзя, то можно ли печатать без диалога печати с параметрами по умолчанию? Или задать параметры печати кодом.
Другими словами минимизировать участие юзера в процессе печати.
Использовались: Windows 10, VS 2019, Stimulsoft.Report.Web 2021.4.4.0, Microsoft Edge 99.0.
У нас есть ASP.Net проект в котором ранее использовался Stimulsoft.Report.Web 2013.1.16
Запуск страницы там происходил так:
Код: Выделить всё
protected void Page_Load(object sender, EventArgs e)
{
stiViewer.Report = GetReport();
stiViewer.PrintDestination = Stimulsoft.Report.Web.StiPrintDestination.Pdf;
stiViewer.PrintToPdf();
}
Это было сделано для того, чтобы пользователь сразу после загрузки отчета имел на экране диалог печати.
Сейчас проект переделан под Stimulsoft.Report.Web 2021.4.4
Такого метода у вьюера уже нет. И теперь отчет появляется в браузере и просто ждет реакции пользователя.
Юзер недоволен тем, что ему приходится лишний раз ворочать тяжелую мышь и нажимать сначала меню Print, потом Print Pdf, а потом еще и Печать в окне диалога.
Есть ли возможность вываливать диалог печати кодом, как было ранее?
И второй вопрос по той же теме.
Я попытался воспользоваться методой описаной у вас ч\з StiReportResponse.
Т.е. :
Код: Выделить всё
protected void ButtonPrintHtml_Click(object sender, EventArgs e)
{
var report = this.GetReport();
StiReportResponse.PrintAsHtml(report);
//StiReportResponse.PrintAsPdf(rpt);
}
Диалог печати сопровождается появлением на заднем фоне уродливой страницы с отчетом вместо того, чтобы появляться во всплывающем окне на фоне текущей страницы. Уродливость ее в том, что она смещена влево и по сути страница не нужна, т.к. отчет хорошо виден в окне диалога печати. После печати пользователю нужно нажимать в браузере Back, тобы вернуться на исходную страницу, что его сильно утомляет.
StiReportResponse.PrintAsPdf(rpt) я тоже пробовал. Вылядит аналогично.
Можно ли избежать этого? Если нельзя, то можно ли печатать без диалога печати с параметрами по умолчанию? Или задать параметры печати кодом.
Другими словами минимизировать участие юзера в процессе печати.
Использовались: Windows 10, VS 2019, Stimulsoft.Report.Web 2021.4.4.0, Microsoft Edge 99.0.