devexpress/agent-skills/devexpress-reports-core
Claude Code and agent skill by devexpress/agent-skills
- community
Checking that the SKILL.md file is still in the repository.
Create reports programmatically with DevExpress XtraReports runtime API (.NET and .NET Framework). Build XtraReport in code, add bands (DetailBand, GroupHeaderBand), controls (XRLabel, XRTable, XRChart), parameters, expressions. Bind to data sources, calculated fields, group reports. Export to PDF, Excel, Word, CSV, HTML, Images with ExportOptions. Master-detail, subreports, cross-tabs. Works cross-platform WinForms, WPF, ASP.NET Core, Blazor.
Install
npx vskill@latest install devexpress/agent-skills/devexpress-reports-coreSKILL.md
DevExpress XtraReports — Core Runtime API
When to Use This Skill
Follow the patterns and constraints in this skill rather than general knowledge of DevExpress APIs. If a scenario is not covered in the main skill body, read the relevant reference file or use MCP servers before writing code — do not guess API signatures.
Use for any task involving:
- Creating
XtraReportinstances and building report structure in code - Adding bands (DetailBand, GroupHeaderBand, ReportHeaderBand, etc.)
- Adding controls (XRLabel, XRTable, XRChart, XRPictureBox, etc.) to bands
- Binding reports to data sources (IList, DataTable, SqlDataSource, ObjectDataSource)
- Defining report parameters, calculated fields, and expression bindings
- Exporting reports:
ExportToPdf,ExportToXlsx,ExportToDocx,ExportToCsv, etc. - Configuring
PdfExportOptions,XlsxExportOptions, etc. - Saving/loading report layouts with
SaveLayoutToXml/LoadLayoutFromXml - Report types: table, master-detail, cross-tab, label, subreport
Scope: This skill covers runtime API only — no viewer UI, no print preview, no designer embedding. For platform-specific viewer integration, see:devexpress-reports-aspnetcore,devexpress-reports-blazor,devexpress-reports-winforms, ordevexpress-reports-wpf.
Before You Start
If the host agent has a structured question-asking tool available, use it to ask these questions one at a time with clear options — for example, Claude Code's AskUserQuestion tool or GitHub Copilot's askQuestions tool. If no such tool is available, ask the questions directly in the chat response before generating code.
Ask the developer:
- Target framework: .NET 8+ or .NET Framework 4.x?
- Platform: WinForms, WPF, ASP.NET Core, Blazor, console/service, or MAUI?
- Operation: Create a new report in code? Load existing
.repxlayout? Modify an existing report class? - Data source: What data are you binding? (IList/collection, DataTable/DataSet, EF DbContext, SQL database, JSON, Excel, none)
- Output: Export to file/stream? Which format(s)? Or display in a viewer?
- Existing NuGet setup: Are DevExpress packages already installed, or starting fresh?
Prerequisites & Installation
Add the platform NuGet package from nuget.org:
| Platform | NuGet Package | |
|---|---|---|
| WinForms | DevExpress.Win.Reporting | |
| WPF | DevExpress.Wpf.Reporting | |
| ASP.NET Core | DevExpress.AspNetCore.Reporting | |
| ASP.NET Web Forms and MVC | DevExpress.Web.Reporting | |
| Console / server | DevExpress.Reporting.Core (core only) |
All packages include the required namespaces (DevExpress.XtraReports.UI, DevExpress.XtraPrinting, DevExpress.Drawing) and export infrastructure.
Linux/macOS (non-Windows): AddDevExpress.Drawing.Skiafor PDF rendering support.
Core Classes Overview
| Class | Namespace | Role | |
|---|---|---|---|
XtraReport | DevExpress.XtraReports.UI | Root report object | |
DetailBand | DevExpress.XtraReports.UI | Repeating data rows (mandatory) | |
ReportHeaderBand | DevExpress.XtraReports.UI | Once at report start | |
ReportFooterBand | DevExpress.XtraReports.UI | Once at report end | |
GroupHeaderBand | DevExpress.XtraReports.UI | Group header | |
GroupFooterBand | DevExpress.XtraReports.UI | Group summary | |
PageHeaderBand | DevExpress.XtraReports.UI | Every page top | |
PageFooterBand | DevExpress.XtraReports.UI | Every page bottom | |
DetailReportBand | DevExpress.XtraReports.UI | Nested (master-detail) data | |
XRLabel | DevExpress.XtraReports.UI | Text / field display | |
XRTable / XRTableRow / XRTableCell | DevExpress.XtraReports.UI | Tabular layout | |
XRPictureBox | DevExpress.XtraReports.UI | Images | |
XRChart | DevExpress.XtraReports.UI | Charts | |
XRCrossTab | DevExpress.XtraReports.UI | Pivot tables | |
XRSubreport | DevExpress.XtraReports.UI | Embedded subreport | |
XRPageInfo | DevExpress.XtraReports.UI | Page number, date | |
Parameter | DevExpress.XtraReports.Parameters | Report parameter | |
CalculatedField | DevExpress.XtraReports.UI | Computed field |
Quick Start — Report in Code
See examples/quickstart.cs for a full working example with grouping, a page header, and PDF export.
Single-field display only: The pattern above usesXRLabelfor one field. For reports with multiple side-by-side columns, group subtotals, images, or charts — readreferences/report-controls.md(control types) andreferences/report-bands.md(band types) before writing code.
For designer-backed reports (withInitializeComponent()): do not add a secondDetailBand. See Antipatterns (AP7) and Constraint 9.
Export API
All export methods have sync and async variants:
With options:
📄 See references/export.md for all ExportOptions classes and their properties.
Common Patterns
Pattern 1 — Data-bound report:
Pattern 2 — Expression binding:
Do not useDataBindings.Add— this is the legacy binding mode. See Antipatterns (AP1).
Expression function names are NOT .NET method names — see Antipatterns (AP2) andreferences/expressions.mdfor the complete catalogue.
Pattern 3 — Report parameter:
Pattern 4 — Save/Load layout:
Pattern 5 — CreateDocument before export (optional, ensures data is prepared):
Pattern 6 — Tabular column layout with XRTable:
UseXRTable/XRTableRow/XRTableCellfor every multi-column layout — data rows, header rows, and summary rows. See Antipatterns (AP3).
Pattern 7 — Group or report summary using XRSummary:
Summary labels requireXRSummary. See Antipatterns (AP5, AP6).
Pattern 8 — Calculate available control width from page dimensions:
Set full-band controls toavailableWidth. See Antipatterns (AP9).
Key Properties — XtraReport
This is the start of the file. Read the full SKILL.md on GitHub.
Security
- Security scanPassed, 98 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingplugins/dx-reporting/skills/devexpress-reports-core/SKILL.md
Popularity
- Repository stars
- 52
- Repository forks
- 8
- 7-day trend score
- 20
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/devexpress/agent-skills/devexpress-reports-core)