Written by Jody Handley

ComponentOne Logo

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.

Keep reading to learn about the latest updates and additions, including new controls for your .NET platform applications, full Angular 2 support in Wijmo and Input controls for Xuni!

 

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.
  • 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.
  • 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

 

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

 

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

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). 


Platform Features & Enhancements


WinForms

New Controls

  • FlexChart charting control has launched out of beta.
  • C1Word Library allows users to read, create and update RTF and Word files through code.
  • A new Map control has been added to WinForms Edition!
  • TreeView for WinForms has been released as a beta control.
  • The Beta version of FinancialChart control supports eight different specialized financial chart types. 

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.
  • 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.
  • 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.
    • 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.

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

  • 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). 

New Controls

  • FlexChart charting control has been released for UWP.
  • C1Word Library allows users to read, create and update RTF and Word files through code.
  • FlexViewer flexible report viewer has been released.
  • FlexReport for UWP has been released! This powerful report engine will allow UWP developers to create lightning-fast reports across all Windows 10 devices.
  • The Beta version of the FinancialChart control supports eight different specialized financial chart types.


WPF

New Controls

  • FlexChart charting control has been released for WPF.
  • C1Word Library allows users to read, create and update RTF and Word files through code.
  • Sparkline for WPF offers a new type of chart to track change over time.
  • The Beta version of GanttView control has been added to WPF Edition!
  • The Beta version of FinancialChart control supports eight different specialized financial chart types.

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.


ASP.NET MVC

ASP.NET Core 1.0 Compatible

MVC Edition controls are now ASP.NET Core 1.0 compatible.

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.
  • 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.

Input 

  • 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).
  • 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.
    • HeaderPath  in ComboBox control allows decoupling the values shown in the combo's input element from the values shown in the drop-down list.

FlexGrid

  • 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.
    • 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.

 FlexChart

  • New Properties:
    • ShowAnimation enables animation in FlexChart. FlexChart now supports over two dozen animation modes.
    • SupportGestures enables panning and zooming in FlexChart. This property exposes relevant MouseAction property that allows setting either Zooming or Panning along chart axis.
  • 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.

FlexSheet

  • 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.


ASP.NET Web API

Excel

  • 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.


blog comments powered by Disqus