logo
small logo
  • Продукты
  • Купить
  • Поддержка
  • Статьи
  • Клиентская панель Поддержка
  • Главная
  • /
  • Статьи
  • /
  • Кастомизация дизайнера отчетов
  • Как использовать линейку в редакторе RichText для FastReport .NET

    16 марта 2022 г.

    В редактор RichText была добавлена линейка. Она позволяет пользователям управлять шириной табуляции и задавать

    Подробнее
  • Интерактивный отчёт с предварительным вводом данных в таблицу

    4 апреля 2022 г.

    Как вы уже знаете, отчеты FastReport .NET могут иметь диалоговые формы, которые выводятся перед

    Подробнее
  • Семейство генераторов отчетов FastReport - быстрый обзор

    23 марта 2020 г.

    Отчетность – без нее невозможно вести деятельность ни в одной сфере жизнедеятельности. Бюрократия является неодолимой

    Подробнее
  • Улучшенное отображение дерева отчета в дизайнере FastReport

    5 сентября 2021 г.

    По просьбе пользователей в дизайнере FastReport .NET и Mono были улучшены деревья отчета и данных.

    Подробнее
  • Как распечатать несколько раз одну страницу отчета

    24 февраля 2022 г.

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

    Подробнее

Кастомизация дизайнера отчетов

31 мая 2020 г.

Дизайнер отчетов изобилует большим количеством функциональных возможностей, которые многие пользователи не используют. Иногда многообразие иконок и меню только отвлекает. Поэтому многие пользователи хотели бы иметь упрощенную версию дизайнера отчетов с только необходимыми им функциями. Такой, кастомизированный дизайнер отчетов можно предоставлять конечным пользователям, встраивая его в свое приложение.

В этой статье мы рассмотрим, как создать пользовательские элементы управления дизайнером ответов, то есть пользовательскую панель инструментов с нужными функциональными кнопками. Сделать это достаточно просто. Дело в том, что компонент дизайнера отчетов предоставляет нам своего рода API, для вызова некоторых его функций, таких как: создание, загрузка и сохранение отчета, печать, просмотр отчета и многие другие.

Поэтому, все что нам нужно – добавить компонент дизайнера отчетов и создать собственную панель инструментов.

Добавим на форму компонент ToolStrip. И создадим на панели 7 кнопок:

  • New – создать новый отчет;
  • Open – открыть существующий шаблон отчета для редактирования;
  • Save – сохранить шаблон отчета;
  • Preview – предварительный просмотр отчета;
  • Undo – отменить последнее редактирование;
  • Redo – вернуть отмененное редактирование;
  • Close – закрыть программу.

Custom designer menu

Подключаем библиотеку FastReport.dll к проекту. И для формы создаем обработчик события Load:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
public DesignerControl designer; //Объявляем переменную для компонента дизайнер отчетов
 
 private void Form1_Load(object sender, EventArgs e)
 {
 designer = new DesignerControl(); //Создаем экземпляр дизайнера отчетов
 this.Controls.Add(designer); //Добавляем компонент на форму
 
 Report report = new Report(); //Создаем объект отчета
 designer.Report = report; //Передаем созданный пустой отчет в дизайнер отчетов
 designer.RefreshLayout(); //Обновляем дизайнер
 designer.Dock = DockStyle.Fill; //Задаем размещение компонента дизайнера
 designer.ShowMainMenu = false; //Отключаем меню в дизайнере
 }
 
 //Кнопка создания нового отчета
 private void ToolStripButton1_Click(object sender, EventArgs e)
 {
 designer.cmdNew.Invoke();
 }
//Кнопка открытия отчета
 private void OpenBtn_Click(object sender, EventArgs e)
 {
 designer.cmdOpen.Invoke();
 }
//Кнопка сохранения отчета
 private void SaveBtn_Click(object sender, EventArgs e)
 {
 designer.cmdSave.Invoke();
 }
//Кнопка просмотра отчета
 private void PreviewBtn_Click(object sender, EventArgs e)
 {
 designer.cmdPreview.Invoke();
 }
//Кнопка завершения программы
 private void CloseBtn_Click(object sender, EventArgs e)
 {
 this.Dispose();
 }
//Кнопка отмены последнего изменения
 private void UndoBtn_Click(object sender, EventArgs e)
 {
 designer.cmdUndo.Invoke();
 }
//Кнопка возврата последнего изменения
 private void RedoBtn_Click(object sender, EventArgs e)
 {
 designer.cmdRedo.Invoke();
 }

Как вы заметили, для каждой кнопки из созданной панели инструментов мы создали событие клика. В соответствии с назначением кнопок, мы вызываем нужную команду дизайнера.

Список доступных команд:

  • cmdNew – создание нового отчета;
  • cmdNewPage – создание новой страницы отчета;
  • cmdNewDialog – создание диалоговой формы отчета;
  • cmdOpen – открытие существующего шаблона отчета для редактирования;
  • cmdSave – сохранение шаблона отчета;
  • cmdSaveAs – сохранение шаблона отчета с указанием пути;
  • cmdSaveAll – сохранение всех изменений;
  • cmdClose – закрытие отчета в дизайнере;
  • cmdCloseAll – закрытие всех отчетов в дизайнере;
  • cmdPreview – просмотр отчета;
  • cmdPrinterSetup – установки печати;
  • cmdPageSetup – установки страницы отчета (ориентация, размеры и др.);
  • cmdAddData – добавить источник данных в отчет;
  • cmdSortDataSources – сортировать источники данных;
  • cmdChooseData – выбор источника данных;
  • cmdUndo – отмена последнего редактирования отчета;
  • cmdRedo – возврат последнего редактирования отчета;
  • cmdCut – вырезать в буфер обмена;
  • cmdCopy – копировать в буфер обмена;
  • cmdPaste вставить из буфера обмена;
  • cmdFormatPainter – задать формат рисовщика;
  • cmdDelete – удалить объект отчета;
  • cmdCopyPage – копировать страницу отчета;
  • cmdDeletePage – удалить страницу отчета;
  • cmdSelectAll – выделить все объекты на странице;
  • cmdGroup – сгруппировать объекты;
  • cmdUngroup – разгруппировать объекты отчета;
  • cmdEdit – редактировать настройки страницы отчета;
  • cmdFind – отображает окно поиска;
  • cmdReplace – отображает окно замены;
  • cmdBringToFront – объект дизайнера на передний план;
  • cmdSendToBack - объект дизайнера на задний план;
  • cmdInsert – проверяет включена ли опция вставки;
  • cmdInsertBand – вставить бэнд;
  • cmdRecentFiles – добавляет файл в список недавних файлов;
  • cmdSelectLanguage – выбрать язык локализации дизайнера;
  • cmdViewStartPage – включить стартовую страницу при открытии дизайнера;
  • cmdReportSettings – задать настройки отчета;
  • cmdOptions – задать настройки дизайнера;
  • cmdReportStyles – задать стиль отчета;
  • cmdHelpContents – показать веб страницу помощи;
  • cmdAbout – отобразить страницу About;
  • cmdWelcome – отобразить приветственную страницу;
  • cmdPolySelectMove, cmdPolySelectPointer, cmdPolySelectAddPoint, cmdPolySelectBezier, cmdPolySelectRemovePoint – настройки полигона.

А теперь запустим наше приложение:

Custom Report Designer

На первый взгляд обычный дизайнер отчетов. Но обратите внимание на верхнюю панель инструментов – она не стандартная. На нее мы вынесли только нужные нам функции.

О продукте Скачать Купить
avatar
Dmitriy Fedyashov
Технический писатель
Fast Reports Team: Dmitriy Fedyashov - Technical Writer at Fast Reports
.NET FastReport Designer Report Customization

Добавить комментарий
logo
  • +7(800)551-75-80
  • info@fastreport.ru
  • Ростов-на-Дону, Россия, 344082, ул.Обороны 24, офис 311
  • Купить
  • Загрузить
  • Документация
  • Отзывы
  • Как деинсталировать
  • Онлайн поддержка
  • FAQ
  • Видео уроки
  • Форум
  • Статьи
  • Наши Новости
  • Пресса о нас
  • Реселлеры
  • ВУЗам
  • Карьера
  • Контакты

© 1998-2022 ООО «Фаст Репортс»

  • Согласие с обработкой персональных данных
  • Не является публичной офертой