logo
small logo
  • Продукты
  • Купить
  • Поддержка
  • Статьи
  • Клиентская панель Поддержка
  • Главная
  • /
  • Статьи
  • /
  • Динамическая генерация таблиц в XAML
  • Как сделать чек из программы WPF

    17 августа 2020 г.

    Я думаю каждый разработчик WinForms сталкивался с мыслью, что стандартные элементы управления формами выглядят слишком

    Подробнее
  • Используем компоненты FastReport .NET в WPF приложениях

    21 августа 2017 г.

    Сегодня я расскажу вам, как в приложении WPF (Windows Presentation Fundation) использовать контролы FastReport .NET,

    Подробнее
  • Копирование бэндов отчета в другой со всем содержимым.

    31 марта 2021 г.

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

    Подробнее
  • Установка FastReport Business Graphics в FastReport .NET

    25 ноября 2021 г.

    FastReport Business Graphics – это библиотека, содержащая несколько продвинутых способов визуализации данных. На сегодняшний день

    Подробнее
  • Отчёт из PostgreSQL в приложении .NET 5 под управлением Astra Linux

    4 декабря 2020 г.

    Сегодня мы поговорим о российской операционной системе Astra Linux. Эта система получила в последнее время

    Подробнее

Динамическая генерация таблиц в XAML

25 октября 2013 г.

Иногда при проектировании WPF приложений возникает необходимость отображения таблиц разной конфигурации для формирования отчётов и отображения данных. Cтандартными средствами Visual Studio добиться нужного результата не всегда представляется возможным.

XAML Report

Можно добавить объекты на форму программным способом, непосредственно в коде программы в процессе исполнения.

Плюс данного метода – это использование минимального набора ПО. Но при построении большой таблицы он займёт слишком много времени. Так же потребуется реализация доступа к таблицам с данными и формирование циклов выборки. А при дальнейшем изменении структуры придётся перестраивать всё заново.

Другой способ получить красивую нестандартную таблицу – использование FastReport.NET.

Открываем дизайнер отчета, создаём источник данных и добавляем объекты: заголовок отчёта, заголовок страницы, данные, подвал страницы и другие при желании. Формируем отчёт и сохраняем его в формате XAML. Для этого жмём кнопку «Предварительный просмотр»(Ctrl+P), далее «сохранить» и выбираем пункт «Файл XAML». Созданный шаблон отчета можно сохранить для последующего использования.

Можно встроить FastReport.NET в создаваемую программу. В ходе работы настраиваем таблицу в редакторе или программно, экспортируем в файл и загружаем сразу в WPF. Код экспорта представлен ниже:

// prepare a report
report1.Prepare();
// create an instance of XAML export filter
FastReport.Export.XAML.XAMLExport export = new FastReport.Export.XAML.XAMLExport();
// export in xaml
report1.Export(export, "result.xaml"); 

После экспорта сразу можно произвести загрузку. Для этого используем код:

// Создание потока для чтения выбранного XAML файла
using (FileStream fs = new FileStream(filename, FileMode.Open))
{ // Создание нового окна для графического вывода содержимого XAML файла
 ((Window)XamlReader.Load(fs)).Show();
}

Где filename – название созданного файла с таблицей.

Вместо FileStream можно использовать MemoryStream, тогда XAML можно передать без использования файлов.

Так можно построить таблицу динамически прямо в коде программы. Это позволяет генерировать таблицу на сервере, а на клиенте получать XAML файл и отображать его на форме. Так же FastReport избавляет от написания кода доступа к базе - вся работа  делается им, и не требует вмешательства.

Из вышесказанного видно, что использование FastReport.NET значительно упрощает задачу и сокращает время разработки, избавляет от трудностей с выборкой данных из базы, облегчает изменение структуры таблицы.

О продукте Скачать Купить
avatar
Aleksey Krakovcev
Облачная разработка
Fast Reports Team: Aleksey Krakovcev - Cloud Development at Fast Reports
.NET FastReport WPF XAML

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

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

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