What's New in
ReoGrid V4
16 major features — from lazy loading for 1M+ rows to full WPF parity, Excel-compatible formatting, conditional styles, and much more.
16
Major Features
1M+
Rows with Lazy Loading
WPF
Full Feature Parity
Excel
Format Compatibility
All New Features
A deep dive into every major feature and improvement shipped in ReoGrid V4.
Ultra-fast Data Loading
New Lazy Loading feature loads only the minimum required data initially, then streams in more as you scroll. Even 1 million rows render in a few hundred milliseconds.
// Set worksheet row count (e.g., 1 million rows)
worksheet.SetRows(1000000);
// Set data source in lazy loading mode
worksheet.AddDataSource(
new RangePosition(0, 0, 1000000, 10),
new MyDataSource(logs),
DataSourceLoadMode.LazyLoading
); Multi-row Headers
Column headers now support multiple rows with cell merging — perfect for category grouping and complex heading layouts.
var extensionHeader = worksheet.ExtensionColumnHeader;
extensionHeader.SetRowCount(3);
extensionHeader.MergeCells(0, 1, 2, 1);
extensionHeader[0, 1].Text = "Category"; Major WPF Enhancements
Almost all features previously only available in WinForms are now fully supported in WPF — including dropdown lists, improved drawing speed, and stability on par with WinForms.
Flexible Data Source Mechanism
Bind and display data from databases, files, or APIs using the IDataSource<T> interface for any data type or structure.
var ds = new MyDataSource();
// Add data source to worksheet
sheet.AddDataSource("A1:G30", ds); Enhanced DropdownListCell
Dropdown lists now accept a worksheet cell range as the list source — enabling dynamic, real-time option selection from master data.
var myRange = sheet1.Ranges["G1:G3000"];
var dropdownList1 = new DropdownListCell(myRange);
sheet1.Cells["A1"].Body = dropdownList1; Excel-compatible Custom Formatting
Support for Excel-style custom format strings with colors, separators, and per-sign formatting for numbers, currency, and dates.
cell1.DataFormat = CellDataFormatFlag.Number;
cell1.DataFormatArgs = "#,##0;[Red]-#,##0"; Enhanced Outline (Grouping)
Outline expand/collapse buttons can now appear above or below rows. The API also supports programmatic collapse and expand of all groups.
sheet.OutlineButtonLocation = OutlineButtonLocation.Top;
var outlineGroup = sheet.GetOutlineGroup(RowOrColumn.Row, 0);
outlineGroup.CollapseAll();
outlineGroup.ExpandAll(); Drawing Performance Improvements
More precise visible-area detection, faster update checks, and minimized drawing delays for scrolling, selection, and editing — smooth even with millions of rows.
Custom Conditional Filters
Build flexible conditional filters programmatically — combine multiple conditions to powerfully filter worksheet data.
var filter = new ConditionalDataFilter();
var condition = new FilterCondition(
2, ConditionOperator.NotEquals, "USD");
filter.Conditions.Add(condition);
sheet.DoFilter("A1:G30", filter); Enhanced String Search
Workbook-wide keyword search with highlighting and next/previous navigation — ideal for quickly finding data in large datasets.
var session = new HighlightTextSearchSession(
Workbook, txtKeyword.Text,
Workbook.CurrentWorksheet);
session.Search();
session.MarkAllResultHighlight(SolidColor.Goldenrod);
session.NextMatch(); Conditional Styles
Automatically apply styles based on cell values using formulas. Use THIS to reference the current cell value for dynamic visualization.
var rule1 = new Rule(
"THIS > 1000", "A1:Z30",
new WorksheetRangeStyle {
Flag = PlainStyleFlag.TextColor,
TextColor = SolidColor.Yellow,
});
sheet.ConditionalStyles.Add(rule1); Enhanced Cell Locking
Three-level locking — sheet, range, or individual cells. Fine-grained control for business forms and input-restricted applications.
// Lock all cells
sheet.IsLocked = true;
// Unlock only C5
sheet.Cells["C5"].IsLocked = CellLock.Unlocked; Floating Point Precision Correction
Automatically corrects minor floating-point errors — no more "3.00000000000004" in business calculations.
sheet.Options.FormulaCalculationPrecision =
FormulaCalculationPrecision.LowPrecision; WinAppDriver UI Testing
Official support for automated UI testing with WinAppDriver. Assign AutomationIds and run regression tests in code.
ReoGridControl.EnableUIAutomation = true;
var reoGrid = session
.FindElementByClassName("ReoGridControl");
reoGrid.Click(); Zero-Row / Zero-Column Worksheets
Worksheets can now start completely empty (0 rows x 0 columns) and grow dynamically as data is added.
worksheet.SetRows(0); More Built-in Formulas
Expanded library of built-in functions and formulas for more complex and practical calculations — closer to full Excel parity.
Licensing & Editions
Starting with V4, ReoGrid is offered as a commercial licensed product. ReoGrid V3 remains available as open-source under the MIT license.
Professional Edition
Up to 3 devices, 1 month of technical support
Enterprise Edition
Unlimited devices, 3 months of technical support
Support Services
Paid support services are available as monthly subscriptions to help your team get the most out of ReoGrid.
Technical Support
Usage consultation, sample code, troubleshooting and issue resolution.
Development Support
Implementation proposals, customization, environment-specific support, and ongoing partnership via Slack.
Ready to upgrade to V4?
Get started with the latest features, performance improvements, and full WPF support.