Today we're pleased to announce the beta release of the new ComponentOne Xamarin Edition! C1 Xamarin Edition is a new take on what we've been developing in Xuni and Xamarin over the past two years. We've made many changes internally to provide a better experience for our Xamarin customers. By re-architecting our controls, we can provide a cleaner API that is grounded in C# and .NET.
Why ComponentOne Xamarin Edition?
Since our controls have been rethought to more cleanly fit into the Microsoft/Xamarin stack, we decided that using the ComponentOne brand more accurately represented our knowledge of C#, XAML, and Microsoft's tools. While Xuni wanted users to "Go Native", ComponentOne provided an avenue for building complete experiences in Visual Studio with fast, flexible .NET UI controls. As time has gone on, we've found our customers are most interested in Microsoft's platform, and we've created and named the controls according to that desire.
What's in the new architecture?
The new ComponentOne Xamarin Edition architecture has been built from the ground up to leverage Xamarin’s technologies directly and provide a better experience on all of the Xamarin platforms. By removing some dependencies with pure iOS and Android, we can provide better performance and features specifically for Xamarin users. 2017 v1 is intended as a beta release of these new controls and an opportunity for user feedback. The new architecture brings many new features, and more parity with some of our other control offerings in Wijmo and ComponentOne Studio. The initial beta contains our FlexGrid, Gauge, Calendar, and CollectionView controls which future plans to eventually roll out replacements for Input and FlexChart over the next few months.
The new architecture adds the ability to use C1 Xamarin Edition in Xamarin.Forms apps targeting UWP. This grows the number of potential platforms that you can target, and allows you to utilize Microsoft’s newest technologies together. UWP support has been a frequent request from our customers, and we're please to be able to provide it in C1 Xamarin Edition.
The new controls should generally perform better than the old controls (sometimes doubling performance). By specifically focusing on Xamarin, the controls cut out some intermediary logic and are much faster. Since they’re entirely in C#, you can also expect a more consistent experience as well. We'll continue to tune performance throughout the beta so this will be an ongoing process.
The new controls should also support Xamarin’s designers for iOS apps. This makes it much easier to construct iOS Storyboards using Xuni controls. Support for Android xml is in progress as well.
New Control Features
The controls have been rethought for the new architecture with the combined experience of Xuni, Wijmo, ComponentOne controls. FlexGrid in particular has gained some exciting new features including:
Android and iOS allow you to swipe downwards near the top of your grid to refresh data. A brief visual should appear that indicates the grid is refreshing its data.
We now support pinch to zoom gestures in FlexGrid.
New Brushes for Styling
Many new brushes have been added for styling the grid. It’s now much easier to stylize elements such as headers or a given column’s background or text color. The “Custom Appearance” sample demonstrates this.
Better layout options including "Auto" column size
FlexGrid previously supported star (*) sizing, but in C1 Xamarin Edition we also support Column.Width=Auto. Setting the width to Auto will size the column to fit the content it contains. We also still support the older AutoSizeColumn(s) and AutoSizeRow(s) methods if you prefer the older style of autosizing content.
Multi-level grouping and Column header outlines
FlexGrid also now supports multiple levels of grouping. Aditionally, if there are multiple groups in the FlexGrid shows numbers in the column header of the first column to expand collapse all the groups).
There are other new features in the controls as well which we will explore more thoroughly in the future.
What about Xuni?
Xuni will continue to persist for some time as we work on the Xamarin Edition beta. Ultimately we'll be moving away from the native platforms, as we've found the majority of our customers are most interested in Xamarin. We want Xuni customers to try out the beta since it will be a superior Xamarin experience.
How do I get the beta?
The beta is available on the ComponentOne website. Since we want everyone to try out the new controls, the beta will be available for trial until September of this year. If you're a current Xuni Xamarin customer and want to use the beta full time, you can use a generated app key with the beta to fully license it.
We plan to iterate on the beta as we move towards release so stayed tuned for updates!