Создание отчета без привязки к данным в Winforms - PullRequest
1 голос
/ 12 мая 2010

Я использую Visual Studio 2008 и все компоненты, входящие в него, а также Infragisitics для Winforms.

Мне нужно разработать этикетку, которая будет печатать на принтере этикеток.

Ни один из элементов управления не привязан к данным и, скорее всего, будет установлен в коде, например, / Label.Text = "My Heading";, поскольку на этикетке будет минимальная информация.

Одна часть информации - это штрих-код, поэтому для этого мне нужны функциональные возможности, я полагаю, что я могу просто установить шрифт метки на штрих-код, и он все сделает.

Могу ли я просто добавить Crystal Report в форму дизайна, задать свойства текста надписи в коде, указать, на каком принтере печатать, а затем вызвать report.Print();

Я быстро пошел и, кажется, не так легко, как я думал.

Спасибо

ОБНОВЛЕНИЕ: я добавил Crystal Report в проект и использую следующий код для доступа к меткам / текстовым объектам в отчете.

            CrystalReport2 d = new CrystalReport2();
            CrystalDecisions.CrystalReports.Engine.TextObject txtReportHeader;
            txtReportHeader = d.ReportDefinition.ReportObjects["Text1"] as CrystalDecisions.CrystalReports.Engine.TextObject;
            txtReportHeader.Text = "TESTING 123";

1 Ответ

1 голос
/ 13 мая 2010

Если это для использования в условиях интенсивного использования (много этикеток на регулярной основе), возможно, стоит потратить время на разработку специальных кодов выхода принтера для печати этикетки и отправки кодов непосредственно в порт принтера .

Отправка шрифтов Windows (включая шрифты штрих-кода) на принтер этикеток может быть довольно медленной. Эта медлительность, вероятно, допустима, если вы печатаете несколько этикеток за раз, но в промышленной среде (например, быстро движущаяся сборочная линия) это может быть проблемой. Использование специальных кодов принтера и внутренних шрифтов принтера позволяет принтеру работать на более высоких скоростях.

Недостатком этого подхода является то, что если вы измените модель принтера, вероятно, потребуется обновить и код приложения.

...