Skip to the full changelog

Dashboard Demo

We introduced the Dashboard Demo sample for WPF and UWP in our last release, and for 2018 v1 we’re adding an all-new mobile version of the app. The Dashboard Demo sample displays sales and profit comparison, goals, top products, and customers. It features many of our controls, including FlexChart, FlexPie, FlexGrid, BulletGraph, and CollectionView. The sample also demonstrates using the controls within more complicated multi-page arrangements, including master detail, carousel, and tabbed pages. Also, many of the new control animations are on full display, more on that later…!

ComponentOne Studio for Xamarin Dashboard Demo

Get the demos: Android | iOS available soon

FlexChart

Pan and Zoom

We’ve expanded the ability to pan and zoom substantially in this release.

First, we’ve added pan and zoom to FlexPie and Sunburst charts. We’ve found that very dense datasets can be hard to read when visualized into these chart types, and adding the ability to pan and zoom greatly alleviates this problem. Users now have more agency to magnify portions of the chart that they find hard to read, which should improve interacting with both chart types an even better experience on mobile.

Secondly, we added some new properties to the Axis object of a traditional FlexChart including Scale and DisplayedRange. Scale allows to set a certain proportion of the points on an axis into view; for example, setting it to .5 puts 50% of the points on that axis in view.

DisplayedRange allows you to set a number of points in view rather than a percentage, setting this value to 5 would display the first five points along the axis. Finally, we’ve also added a ScrollTo function that allows you to programmatically scroll to a point in the chart. Taken together, this should allow for much more dynamic interactions on mobile.

Animations

Another large addition in this release is that we’ve added animations for FlexChart and FlexPie. These animations are available for loading and updating data in these chart types, as well as selection for FlexPie.

FlexGrid

Column/Row Dragging Reordering

One of the most requested features for FlexGrid was the ability drag to reorder rows and columns. In this release, this is now available by setting the AllowDragging property. Resizing columns and rows should also feel better in this release, as we’ve overhauled most of our gesture and touch interactions.
There are a couple of limitations with the reordering regarding frozen columns or grouped headers. These scenarios are uncommon, but we’ll be addressing these in a future release.

Animations

The feature also has new animations to accompany reordering your data:

FlexGrid animations

Deletion Changes

Finally, we’ve changed deletion to be so that it’s based on selection, rather than current cell. Now changing the SelectionMode has an impact on what is deleted. Cell-based Selection simply deletes the content of the cell without modifying the CollectionView, though Row-based selection have the rows deleted in both the FlexGrid and CollectionView.

Gauge

We’ve adding the ability to use dragging interactions with our gauge controls (Linear Gauge, Radial Gauge, and Bullet Graph) rather than just taps. This often feels more natural, and, while a small detail, should noticeably improve the feel of the gauge controls. Learn more

Input

Our input controls also see some quality-of-life #### Improvements in this release. We’ve added animations for all the DropDown derived controls, and you can enable them by setting the IsAnimated property:

We’ve also added some basic keyboard handling to the controls, so for UWP users and mobile users with a keyboard you should now be able to navigate through the list of items available in a DropDown using the arrow keys, use Enter to being and end editing, and use the tab key to navigate through tab stops on UWP. We’ve also added some new properties for customizing the fonts in AutoComplete and ComboBox. There are now FontAttributes, FontSize, and FontFamily properties for configuring these controls. Read more about Input

Project Template

Finally, we’ve added a new .NET Standard project template for Visual Studio 2017. This template should help you modernize your Xamarin.Forms projects as the .NET platform continue to evolve. The templates should now also automatically open up the GrapeCity license manager add in (on platforms that support it) to make licensing your projects more straightforward. See all project templates

New .NET Standard project template

Get the new release


Full Changelog

General

Improvements

• .NET Standard Project Template added for Visual Studio 2017.

Bug fixes

• [X.Android] Fixed an exception that could occur when deploying samples with Xamarin.Android.Suport.xxx version 27.0.2

Calendar

Bug fixes

• [X.iOS] Calendar(Header/DayofWeek/DaySlot ) within an opened dropdown portion no longer becomes overlapped when navigate to adjacent months after device orientation is changed.

FlexChart

Improvements

• [XF][X.iOS][X.Android] Added Animations to FlexChart and FlexPie.

• [XF][X.iOS][X.Android] Zooming and Panning has been improved with the addition of Scale and DisplayedRange properties for each Axis.

• [XF][X.iOS][X.Android] Added ScrollTo method.

• [XF] Added a DataObject property to the ChartDataPoint object for deeper custom tooltip configuration from Xaml. You should now be able to bind to that property and use a converter to create more flexible tooltips.

Bug fixes

• [XF][X.iOS][X.Android] Fixed an issue where Zooming could not be performed programmatically after Axis Min and Max values were set on initial zoom

• [X.Android] Added missing properties for Android Designer configuration of FlexChart, FlexPie, and Sunburst

• [X.Android] Fixed an issue where some properties were not taking effect when set from the Android Designer.

• [X.Android] Fixed the visual appearance of the Sunburst chart in the Android designer.

• [XF] VerticalOptions should work correctly with all options rather than be limited to FillAndExpand

• [XF][X.Android] Customizing HorizontalLine/VerticalLine of LineMarker through ChartStyle class now takes effect.

• [XF][X.iOS][X.Android] SplineArea series now render if Stacking set to Stacked100pc when series contains Null values data point on iOS and Android.

• [XF]Fixed a crash that could occur when binding multiple series to a second axis.

• [XF][X.iOS][X.Android] Original Axis Label now renders correctly when an empty LabelLoading event is called.

• [XF][X.iOS][X.Android] AxisX labels now render correctly when formatting with LabelLoading event on Bar/Rotated chart.

• [X.iOS]Custom string label text inside LabelLoading event now takes effect on AxisX.

• [XF]FlexPie stroke color(for HeaderStyle/FooterStyle/LegendStyle) can now be changed at runtime.

• [XF] Axis labels are no longer shown as numeric values instead of string values when data is directly bound to the series on UWP.

• [XF][X.iOS][X.Android] Setting AxisY Origin now works if BindingX is set as a DateTime value.

• [X.Android] Fixed an issue where properties of TitleStyle set for one secondary axis also take effect for another secondary axis.

• [XF][X.Android][X.iOS]Color of data points/series with the Minimal Palette are no longer the same as the Standard Palette

• [X.iOS] Fixed an issue where an extra radius line would appear in a FlexPie with a single data point when selecting it.

• [XF] Added Material Palette for chart controls.

FlexGrid

Improvements

• [XF][X.iOS][X.Android] Added support for Column and Row Reordering. This can be controlled by setting the AllowDragging property.

• [XF][X.iOS][X.Android] Changed deletion so that it is based on selection rather than current cell.

• [XF UWP][X.iOS] Added support for soft editing in addition to full edits. This gives you the ability to exit from edit mode using keyboard arrow keys when entered with touch action or mouse action. If a user enters edit mode from a keyboard it will instead go into full edit mode where the arrow keys navigate within the content. This behavior mimics that of Excel. Note this functionality is currently only available in Xamarin.iOS and in UWP through Xamarin.Forms (and not iOS and Android).

Bug fixes

• [X.iOS] Fixed an issue where adding the C1.iOS.Grid package to a Storyboard would hang.

• [XF] VerticalOptions should work correctly with all options rather than be limited to FillAndExpand

• [XF] Fixed an issue where a destination row/column goes to last row/column of viewport instead of showing at the first row/column of viewport if ChangeView() method is called on Android.

• [XF][X.iOS][X.Android] Corrected issue where a focused cell changes on dragging selection adorner in CellRange/RowRange SelectionModes

• [XF][X.Android][X.iOS] Cells with int/double/float/DateTime/Boolean data type columns can now be correctly removed by pressing Delete key

• [XF][X.Android]Fixed an issue where a selected cell value can be removed by pressing Delete key although its column is ReadOnly on Android and UWP.

• [XF][X.Android]Second to last row will now be selected automatically after removing the last row through deletion on Android and UWP.

• [XF][X.iOS] A FlexGrid placed inside ScrollView can now be scrolled vertically.

• [XF] Fixed an issue where a custom cell factory alignment would change inconsistently while scrolling.

• [XF] Fixed a NullReferenceException that occurred after editing more than two/three cells in grouped FlexGrid with row details on Android.

Gauge

Improvements

• [XF][X.iOS][X.Android] Added support for dragging interactions.

Input

Improvements

• [XF][X.iOS][X.Android] Added FontAttributes, FontSize, and FontFamily properties.

• [XF][X.iOS][X.Android] Added animations that can be turned on or off by setting the IsAnimated property.

Bug fixes

• [XF] Fixed an issue where the SelectedBackgroundColor was not being removed properly as selection changed.

• [XF] VerticalOptions should work correctly with all options rather than be limited to FillAndExpand

• [XF]Fixed an issue where setting DropDownMode does not take effect when it is changed at runtime to ForceAbove/AboveorBelow on Android

• [X.iOS] Fixed a NullReferenceException that was thrown if a Mask or Value is set from Storyboard

• [XF] Fixed a System.NullReferenceException or System.ObjectDisposedException that could occur when navigating back to between pages containing ComboBoxes.

• [XF] Fixed an issue where a MaskedEntry placed in a DropDown's header doesn't expand to full width on UWP.

• [XF] Fixed an issue where a ComboBox doesn't open when DropDownMode="ForceBelow" and DropDownBehavior="HeaderTap".

• [XF] Fixed a NullReferenceException that was thrown when viewing Input controls in XF Previewer’s Android view.

• [XF] Binding SelectedValue and SelectValuePath in AutoComplete should now work as expected.

• [XF] Fixed an issue where TextChanged event fired twice for ComboBox control.

• [XF] A NullReferenceException should no longer occur when incrementing a SelectedIndex of an invisible ComboBox.

• [XF] Setting SelectedValue should now work when ItemsSource of ComboBox is a string array.

• [XF] System.NullReferenceException no longer occurs when getting SelectedValue if SelectedIndex is set at design time on iOS.

• [XF][X.Android] Fixed an IndexOutOfBoundsException that occurred when selecting any item from a fullscreen dropdown when the AutoComplete property is set to False.

• [XF] DropDown now opens on Header tap with a MaskedEntry in its Header.

• [XF] Fixed an application crash on selecting an item with empty string for ComboBox.

Key: [XF] = Xamarin.Forms, [X.Android] = Xamarin.Android, [X.iOS] = Xamarin.iOS, [X.Mac] = Xamarin.Mac


Past Releases