ComponentOne Studio: What's New in V2 2016

It's July, and that means our second major release of 2016 has been released into the wild. You'll find some fantastic new controls and a lot of great enhancements.

See What's New in Release 2.0, released July 2016

Top News

FlexChart for UWP, WPF, and WinForms

We're in the process of a full-scale refactor of all our top controls, and FlexChart (already available in MVC, Wijmo, and Xuni) is now officially released for WPF, UWP, and WinForms. (It's been in beta since May.)

Why FlexChart?

  • Flexible: FlexChart supports our trademark flexibility, allowing you to take the key feature set and customize to fit any requirement. Read more about customizations.
  • Fast: FlexChart has been engineered to perform faster and better than C1Chart.
  • Small footprint: FlexChart's assembly tops out at 229 KB for WinForms, 183 KB for WPF, and 218 KB for UWP.
  • Key Feature set: It includes all the top chart types and elements you'd expect from world-class chart control. Explore chart types and elements.
  • Universal API: FlexChart has a shared object model; you'll be able to code across platforms with virtually no learning curve.

WPF FlexChart's Financial Chart features WPF FlexChart's Financial Chart features Read more about FlexChart

C1Word Library for UWP, WPF, and WinForms

Our C1Word Library for desktop allows you to create, read, and update Word and RTF documents in your apps, through the code. We released the beta version back in March. Add graphics with C1Word Add graphics and shapes with C1Word Library

Why C1Word?

  • Extensive APIs to explore all elements of Microsoft Word documents
    • Formats (Title, Paragraph, Heading, Text)
    • All fonts and settings
    • Tables
    • Images and graphic objects
    • Work with some shapes
  • Save content in DOCX or RTF format
    • Retain page size settings
    • Draw UI object trees (UWP, WPF) or metafiles (WinForms)
    • Add bookmarks and hyperlinks
  • View the generated file in all versions of MSWord and industry-standard document viewers
  • Ideal for:
    • Read and edit document content within an app
    • Generate custom free-flow reports in Microsoft Word
    • Send data in a standard editable file to non-users of your app

Read more about C1Word Library

FlexViewer for UWP

We continue to grow our reporting and documents offerings, and today we're launching FlexViewer document viewer for UWP. You can display your FlexReports and C1Reports in your app, and we support a variety of features, including:

  • Built-in parameters
  • Built-in document pane for bookmarks and pages
  • Touch support
  • Full print support
  • Pixel-perfect rendering
    • DirectX rendering in desktop and Windows 10 mobile devices
    • SVG rendering in MVC (currently available in beta)
  • Rich viewer feature set
    • Search
    • Thumbnails
    • Parameters
    • Document map
  • Export to:
    • PDF
    • HTML
    • RTF
    • Excel
    • Open XML
    • Word/Excel
    • TIFF
    • BMP
    • PNG
    • JPEG
    • GIF

FlexViewer for UWP FlexViewer for UWP Read more about FlexViewer

UWP Licensing Model has Changed

UWP Edition licensing model has been changed. Since 2016 v2 release, each application that uses UWP Edition controls requires a unique license key (either evaluation one or fully licensed key). Read more about app-based licensing.

Platform Features & Enhancements


New Controls

New Features

  • C1Report
    • Added German, Italian and Spanish localizations for most end user-visible strings.
  • Command
    • C1TopicBar: Added new property C1TopicLink.Pressed: the value indicates whether the link was pressed.
  • FlexPivot
    • It is now possible to use a single field multiple times in any role, in Values, Rows, Columns, Filters. Main uses of this feature are to apply different subtotal functions to a single field at the same time (adding the field to Values) and to group by the same field more than once using different formats (adding the field to Rows or Columns), for example, to see subtotals by year and by quarter using the same date field.
    • Added Show As feature. It allows to show results as difference or percentage with respect to the previous row or column. Great for showing how measured values are changing from previous year or quarter, compare different measures, and other tasks like that. To specify a Show As calculation, use the new Show As tab of the Field Settings dialog on a value field.
    • FlexPivot grid now has a context menu with Copy, Show Detail, Field Settings.
    • Added TotalsBeforeData property. It is False by default, which means that subtotals rows and columns appear after data rows and columns. If it is set to True, subtotals will appear before data.
    • Weighted group operations (aggregations, subtotals) are now supported in DataEngine. Previously, they were only supported for the DataSource data option. Weighted subtotals are specified using the "Weigh by" combo box on the Subtotals tab of the Field Settings dialog.
    • Cancelling current calculation is faster now. Current operation is cancelled if the user changes view settings while the engine is calculating. Previously, the engine had to finish the current operation (not necessarily the entire calculation; a calculation usually consists of multiple operations), which in some cases could take considerable time. Now, cancel is virtually immediate in all cases.
    • DataEngine queries now support custom operations. Both group operations (aggregation) and simple operations can now be custom, user-specified. Programmers can write arbitrary code in a custom class, that will constitute the body of a custom operation. Actions or calculations performed on the data are no longer limited to the stock operations, and performance is kept on the same lightning-speed level because loop over data, including indexing, is performed by DataEngine using the same optimizations as in the stock operations.
    • Read more about FlexPivot
  • FlexReport
    • Added parameterized constructors for TextField class.
    • Added properties:
      • float TextFieldBase.TextAngle { get; set; }
      • float Field.TextAngle { get; set; }
      • Gets or sets the angle of text rotation within the field.
      • double TextFieldBase.LineSpacing { get; set; }
      • double Field.LineSpacing { get; set; }
      • Gets or sets the line spacing between text lines in the field, in percent. The default is 100 which corresponds to normal line spacing.
      • TextFitMode TextFieldBase.TextFitMode { get; set; }
      • Gets or sets a value indicating how the text is fit into field's bounds.
    • Behavior change: previously, if the type of a field could not be resolved while loading a report, an exception occurred. Now, instead of the exception, a text field is created, with the following text: Unknown field type [XXX]. This field type may not be supported in the current edition of FlexReport.
    • Read more about FlexReport
  • FlexGrid
    • Added C1SuperErrorProvider property to show customizable error tips.
  • TrueDBGrid
    • Added BorderColor property and BorderColorChanged event.
  • GanttView
    • Added Task.SplitTask(double[] durations) public method.
    • Added a possibility to change the display format of Duration column in the grid of C1GanttView.
    • Added C1GanttView.Schedule.CalendarWeekRule property.
  • Input
    • Added ComboBoxDataBinding sample. Get the sample.
    • C1ComboBox: Improved RTL handling. Text in non-RTL languages doesn't change words order when shown with RTL layout.
  • InputPanel
    • InputControlHost can be saved to XML and loaded from XML at runtime.
    • Added the ControlHostFromXmlNode event to C1InputPanel. It allows to detect user's ControlHost in XML tree.
    • Added the ControlHostNodeName property and Load/SaveControlHostProperties virtual methods to InputControlHost.
    • Added InputPanelDeserialized and ItemDeserialized events to C1InputPanel.
  • Ribbon
    • RibbonControlHost can be saved to XML and loaded from XML at runtime (if supported by ControlHost developer).
    • Added the ControlHostFromXmlNode event to C1Ribbon and C1StatusBar. It supports detection of user's ControlHost in XML tree.
    • Added the ControlHostNodeName property and Load/SaveControlHostProperties virtual methods to RibbonControlHost.
    • Added a few *Deserialized events to C1Ribbon and C1StatusBar to allow subscribing to event handlers after loading from XML.
  • Schedule
    • Improved RTL handling. Text in non-RTL languages doesn't change words order when shown with RTL layout.
  • SuperTooltip
    • Improved RTL handling. Text in non-RTL languages doesn't change words order when shown with RTL layout.
    • Added RightToLeft property. Default property value is RightToLeft.Inherit, which means that tooltip will be shown with the same layout as associated control.
  • TrueDBGrid
    • Added Add(int[] rows) method for C1TrueDBGrid.SelectedRows collection. This method is used for adding several rows at once for selection.
  • FlexChart
    • Added FinancialChart control for visualisation of financial data(BETA license).
    • Added FinancialChartExplorer sample.
    • Added TrendLine class for plotting trend lines. It can be used with FlexChart/FinancialChart.
    • Added Axis.TitleStyle property for customization of axis title appearance.
    • Added Legend.Orientation property for setting legend orientation.
    • Added Legend.Title/TitleStyle properties for customization of legend's title.
    • Added FlexChart.SeriesVisibilityChanged event. The event fires when series visibility was changed.
    • Added Series.AltStyle property that allows to specify alternative data point appearance.
    • Read more about FlexChart

Breaking Changes

  • Due to an added reference to the C1.Win assembly, the following controls will experience breaking changes:
    • PDF
    • GanttView
    • Input
    • InputPanel
    • Ribbon
    • Schedule
    • SplitContainer
    • SuperToolTip
  • Due to an added reference to the C1.Win.C1SuperTooltip assembly, the following controls will experience breaking changes:
    • InputPanel
    • Ribbon
    • Schedule
    • SplitContainer
    • FlexReport
  • ImageEntry class has been moved to C1.Win.C1SuperTooltip assembly, affecting the following controls:
    • Ribbon
  • FlexReport breaking changes
    • All export filters (classes derived from C1.Win.FlexReport.ExportFilter) were moved to C1.Win.C1Document.4 assembly. The namespace for all those classes has changed to C1.Win.C1Document.Export. The following classes were affected by this change:
      • FlexReport.GraphicsFilter -> C1.Win.C1Document.Export.GraphicsFilter
      • FlexReport.ImageFilter -> C1.Win.C1Document.Export.ImageFilter
      • FlexReport.RasterImageFilter -> C1.Win.C1Document.Export.RasterImageFilter
      • FlexReport.JpegFilter -> C1.Win.C1Document.Export.JpegFilter
      • FlexReport.PdfFilter -> C1.Win.C1Document.Export.PdfFilter
      • ...and so on.
    • Static properties on C1FlexReport returning static registered instances of supported export providers were moved to the ExportProvider class. (The reason for this change is the addition of the new C1PdfDocumentSource component which uses the same export filters as C1FlexReport.)


  • UWP Edition licensing model has been changed. Since 2016 v2 release, each application that uses UWP Edition controls requires a unique license key (either evaluation one or fully licensed key). Read more about app-based licensing.

New Controls


New Controls

New Features & Enhancements

  • DataGrid
    • Add methods to get page images in a background thread.
    • Improved performance when C1DataGrid.ColumnWidth property is AutoStar (default value). Added DataGridColumn.DefaultAutoWidth property which determines default column width used in AutoStar sizing. Read more about the performance of DataGrid for WPF.


ASP.NET Core 1.0 Compatible

MVC Edition controls are now ASP.NET Core 1.0 compatible. Explore all the Core demos!

FlexViewer Beta

  • The FlexViewer control continues to evolve.
    • View FlexReport and C1Reports using FlexViewer for MVC
    • Available in ASP.NET 4.0 and ASP.NET Core 1.0.
    • In ASP.NET Core you can use HtmlHelpers or TagHelpers.
    • See the FlexReport Explorer demo.
  • Use Visual Studio ItemTemplate to rapidly integrate FlexViewer and FlexReport Web API in the same project. This template allows you to quickly integrate FlexReport Web API and FlexViewer in MVC5 applications. In ASP.NET Core, MVC3, and MVC4, it allows configuring FlexViewer control according to the separately hosted FlexReport Web API.
  • Read more about FlexViewer for MVC.


  • New Control: InputDateTime control supports entering and editing date and time values using a single control (as opposed to using an InputDate and an InputTime). Try the InputDateTime Demo. Read the documentation.

  • New Properties:

    • AutoExpandSelection in DropDown controls determines whether input controls should automatically select whole words/numbers when clicked. This applies to all controls that derive from DropDown, and makes it easier to edit dates, times, colors, etc. Read more.
    • HeaderPath in ComboBox control allows decoupling the values shown in the combo's input element from the values shown in the drop-down list. Read more.


  • New Properties:
    • FlexGrid.IMEEnabled supports IME modes while the grid is not in edit mode. This property benefits sites and applications in Japanese, Chinese, Korean and other languages that require IME support. Read more.
    • DropDownCssClass makes it easier to style the drop-down list used to edit cells in columns that have DataMaps. Try the multi-column datamap demo.


  • New Properties:
    • ShowAnimation enables animation in FlexChart. FlexChart now supports over two dozen animation modes. Try the demo.
    • SupportGestures enables panning and zooming in FlexChart. This property exposes relevant MouseAction property that allows setting either Zooming or Panning along chart axis. Try the demo.
  • New Scaffolder:
    • Quickly add FlexChart to the application using scaffolder and configure properties. The scaffolder generates relevant controller and view code to set up FlexChart.


  • New Sample:
    • FlexSheet 101: Intro sample for MVC shows you how to get started.
  • New Scaffolder:
    • Easily add FlexSheet to applications using a guided wizard that allows you to set different properties of the control. The scaffolder generates relevant controller and view code to set up FlexSheet.

Client API IntelliSense

In 2016 V1.5, we added TypeScript IntelliSense for MVC controls, and now we have added client side JavaScript IntelliSense capability for the controls. The IntelliSense not only provides code completion but also displays relevant documentation for each property. Read more.



  • New features:
    • Add/delete column in Excel inside storage
    • Add/delete rows in Excel files in storage
    • Hide/unhide columns and rows of Excel file in storage
    • Group/ungroup columns of Excel file in storage
    • Split Excel files into multiple files
    • Add posted Excel file to storage.
    • Find text in Excel. Return all sheet names and cell index.
    • Replace text in Excel sheet
    • Generate Excel from given template and data

DataEngine Beta

  • Added DataEngine Web API that supports analyzing large number of records using Wijmo5 OLAP. This feature is currently provided as a sample. Try the demo.

Complete Release Histories

Download free trial today >>

Current subscription owner? Update with C1Live >>


GrapeCity Developer Tools
comments powered by Disqus