Hello Syncfusion Support!
I am facing issues when I have two buttons and I can change different chart type by selecting each one of them.
[XAML]
<ContentPage.BindingContext>
<vm:TestChartVM/>
</ContentPage.BindingContext>
<StackLayout
BackgroundColor="White">
<StackLayout
Orientation="Horizontal"
HorizontalOptions="Center">
<Button
Text="Column"
Command="{Binding SelectColumnCommand}"/>
<Button
Text="Radar"
Command="{Binding SelectRadarCommand}"/>
</StackLayout>
<chart:SfChart
HeightRequest="400"
HorizontalOptions="FillAndExpand"
VerticalOptions="Center"
Series="{Binding SeriesCollection}" >
<chart:SfChart.Title>
<chart:ChartTitle
Text="My chart"/>
</chart:SfChart.Title>
<chart:SfChart.ChartBehaviors>
<chart:ChartZoomPanBehavior
ZoomMode="XY"/>
</chart:SfChart.ChartBehaviors>
<chart:SfChart.PrimaryAxis >
<chart:CategoryAxis />
</chart:SfChart.PrimaryAxis>
<chart:SfChart.SecondaryAxis>
<chart:NumericalAxis
RangePadding="Normal"/>
</chart:SfChart.SecondaryAxis>
</chart:SfChart>
</StackLayout>
[ViewModel]
private ChartSeriesCollection seriesCollection;
public ChartSeriesCollection SeriesCollection
{
get { return seriesCollection; }
set { SetValue(ref seriesCollection, value); }
}
public ObservableCollection<ChartDataPoint> DataSource { get; set; }
ColumnSeries columnSeries;
RadarSeries radarSeries;
public Command SelectColumnCommand { get; private set; }
public Command SelectRadarCommand { get; private set; }
public TestChartVM()
{
SeriesCollection = new ChartSeriesCollection();
DataSource = new ObservableCollection<ChartDataPoint>()
{
new ChartDataPoint("Jan", 10),
new ChartDataPoint("Feb", 30),
new ChartDataPoint("Mar", 50),
new ChartDataPoint("Apr", 40),
new ChartDataPoint("May", 15),
};
columnSeries = new ColumnSeries()
{
ItemsSource = DataSource,
XBindingPath = "XValue",
YBindingPath = "YValue"
};
radarSeries = new RadarSeries()
{
ItemsSource = DataSource,
XBindingPath = "XValue",
YBindingPath = "YValue"
};
SelectColumnCommand = new Command(() =>
{
SeriesCollection.Clear();
SeriesCollection.Add(columnSeries);
});
SelectRadarCommand = new Command(() =>
{
SeriesCollection.Clear();
SeriesCollection.Add(radarSeries);
});
}
Issues:
On iOS => When I select radar button first, and then back to column chart, after double tap chart to zoom in will always throw an exception "Specified cast is not valid".
On Android => Same actions, in column chart, axis grid line will offset to the bottom.
Please help me fix this out and sorry for my little English.