In my project the output panel showing the following binding errors
System.Windows.Data Error: 40 : BindingExpression path error: 'Exponent' property not found on 'object' ''DefaultTickLabelViewModel' (HashCode=56110932)'. BindingExpression:Path=Exponent; DataItem='DefaultTickLabelViewModel' (HashCode=56110932); target element is 'TextBlock' (Name=''); target property is 'Text' (type 'String')
System.Windows.Data Error: 40 : BindingExpression path error: 'HasExponent' property not found on 'object' ''DefaultTickLabelViewModel' (HashCode=56110932)'. BindingExpression:Path=HasExponent; DataItem='DefaultTickLabelViewModel' (HashCode=56110932); target element is 'TextBlock' (Name='exponent'); target property is 'Visibility' (type 'Visibility')
System.Windows.Data Error: 40 : BindingExpression path error: 'Separator' property not found on 'object' ''DefaultTickLabelViewModel' (HashCode=9331561)'. BindingExpression:Path=Separator; DataItem='DefaultTickLabelViewModel' (HashCode=9331561); target element is 'TextBlock' (Name=''); target property is 'Text' (type 'String')
my Line chart view code is here (I can’t able to make attachment)
<UserControl x:Class="Instron.Database.Presentation.DatabaseViews.Views.Visualization.LineChartView"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:SciChart="clr-namespace:Abt.Controls.SciChart;assembly=Abt.Controls.SciChart.Wpf.3.0"
xmlns:s="http://schemas.abtsoftware.co.uk/scichart"
mc:Ignorable="d" Width="Auto" Height="Auto"
xmlns:gbl="clr-namespace:Instron.Database.Presentation.DatabaseViews.Globalization">
<UserControl.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ContentControlDataTemplate.xaml"/>
</ResourceDictionary.MergedDictionaries>
</ResourceDictionary>
</UserControl.Resources>
<Grid >
<TextBlock FontSize="24"
HorizontalAlignment="Center"
VerticalAlignment="Center"
TextWrapping="Wrap"
Foreground="DimGray"
Visibility="{Binding IsAxisVisible,Converter={StaticResource NotBooleanToVisibilityConverter}}" >
<TextBlock.Text>
<gbl:TranslateExtension>
<gbl:TranslateExtension.DesignTimeText>Either X or Y axis do not contain sufficient data</gbl:TranslateExtension.DesignTimeText>
<gbl:TranslateExtension.StringId>010000123</gbl:TranslateExtension.StringId>
</gbl:TranslateExtension>
</TextBlock.Text>
</TextBlock>
<s:SciChartSurface x:Name="sciChart" ChartTitle="{Binding ChartName}" Style="{StaticResource SciChartSurfaceStyle}" Visibility="{Binding IsLegendVisible,Converter={StaticResource BoolToVisibilityConverter}}"
GridLinesPanelStyle="{StaticResource GridLinesPanelStyle }" RenderableSeries="{Binding RenderableSeries}" Margin="0,-5,0,-10"
DataContextChanged="sciChart_DataContextChanged" Rendered="sciChart_Rendered" ViewportManager="{Binding ViewportManager}">
<s:SciChartSurface.ContextMenu>
<ContextMenu >
<MenuItem Command="{Binding SaveAsCommand}">
<MenuItem.Header>
<gbl:TranslateExtension>
<gbl:TranslateExtension.DesignTimeText>SaveAs</gbl:TranslateExtension.DesignTimeText>
<gbl:TranslateExtension.StringId>010000126</gbl:TranslateExtension.StringId>
</gbl:TranslateExtension>
</MenuItem.Header>
</MenuItem>
<MenuItem Command="{Binding CopyCommand}">
<MenuItem.Header>
<gbl:TranslateExtension>
<gbl:TranslateExtension.DesignTimeText>Copy</gbl:TranslateExtension.DesignTimeText>
<gbl:TranslateExtension.StringId>010000127</gbl:TranslateExtension.StringId>
</gbl:TranslateExtension>
</MenuItem.Header>
</MenuItem>
<MenuItem Command="{Binding PrintCommand}">
<MenuItem.Header>
<gbl:TranslateExtension>
<gbl:TranslateExtension.DesignTimeText>Print</gbl:TranslateExtension.DesignTimeText>
<gbl:TranslateExtension.StringId>010000128</gbl:TranslateExtension.StringId>
</gbl:TranslateExtension>
</MenuItem.Header>
</MenuItem>
</ContextMenu>
</s:SciChartSurface.ContextMenu>
<s:SciChartSurface.XAxis>
<s:NumericAxis AutoTicks="False" GrowBy="0.05, 0.05"
DrawMajorGridLines="{Binding IsLegendVisible}" DrawMinorGridLines ="False"
AxisTitle="{Binding XAxisName}" TitleStyle="{StaticResource AxisTitleStyle}" TickLabelStyle="{StaticResource AxisLabelStyle}"
LabelProvider="{Binding XLabelFormatter}"
MajorDelta="1" MinorDelta="0.2"
/>
</s:SciChartSurface.XAxis>
<s:SciChartSurface.YAxis>
<s:NumericAxis GrowBy="1, 1" TickLabelStyle="{StaticResource AxisLabelStyle}" DrawMajorGridLines="{Binding IsLegendVisible}"
AxisAlignment="Left" DrawMinorGridLines ="False"
AxisTitle="{Binding YAxisTitle}"
TitleStyle="{StaticResource AxisTitleStyle}" />
</s:SciChartSurface.YAxis>
<!-- Adding the ZoomPanModifier gives SciChart the ability to pan on mouse-drag -->
<s:SciChartSurface.ChartModifier>
<s:ModifierGroup>
<s:XAxisDragModifier ClipModeX="ClipAtExtents"/>
<s:YAxisDragModifier ClipToBounds="True" />
<s:RubberBandXyZoomModifier x:Name="rubberBandZoomModifier" IsEnabled="True" IsXAxisOnly="False" ZoomExtentsY="False" IsAnimated="True"/>
<s:ZoomExtentsModifier x:Name="zoomExtentsModifier" ClipToBounds="True" ExecuteOn="MouseDoubleClick"/>
<s:LegendModifier x:Name="legendModifier" GetLegendDataFor="AllVisibleSeries" />
</s:ModifierGroup>
</s:SciChartSurface.ChartModifier>
<s:SciChartSurface.Annotations>
<s:CustomAnnotation>
<s:CustomAnnotation.ContentTemplate>
<DataTemplate>
<s:SciChartLegend x:Name="legendControl" Margin="2,2" Orientation="Horizontal" Background="Transparent" BorderThickness="0" ScrollViewer.VerticalScrollBarVisibility="Auto"
Visibility="{Binding IsLegendVisible,Converter={StaticResource BoolToVisibilityConverter}}"
LegendData="{Binding LegendData, ElementName=legendModifier,Mode=OneWay}" >
<s:SciChartLegend.Resources>
<SciChart:ColorToBrushConverter x:Key="ColorToBrushConverter"/>
</s:SciChartLegend.Resources>
<s:SciChartLegend.ItemTemplate>
<DataTemplate DataType="SciChart:XyzSeriesInfo">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Rectangle Grid.Column="0"
VerticalAlignment="Center"
Stretch="Fill"
Width="10"
StrokeThickness="10"
Stroke="{Binding SeriesColor,
Converter={StaticResource ColorToBrushConverter}}" />
<TextBlock Grid.Column="1" Foreground="Black"
Margin="2,0,15,0"
HorizontalAlignment="Center"
Text="{Binding SeriesName}" FontWeight="Normal"/>
</Grid>
</DataTemplate>
</s:SciChartLegend.ItemTemplate>
</s:SciChartLegend>
</DataTemplate>
</s:CustomAnnotation.ContentTemplate>
</s:CustomAnnotation>
</s:SciChartSurface.Annotations>
</s:SciChartSurface>
</Grid>
</UserControl>
- Raghupathy asked 10 years ago
- last edited 10 years ago
- You must login to post comments
Hi Raphupathy,
This binding error occurs because you are deriving from LabelProviderBase not NumericLabelProvider or DateTimeLabelProvider when creating custom label providers. The remedy is to ensure that you derive from NumericLabelProvider for NumericAxis or DateTimeLabelProvider for DateTimeAxis.
This is our mistake, we changed the API without updating the documentation. Please see the updated article Overview of the LabelProvider API.
Creating your Own LabelProviders
When creating your own LabelProvider, please use one of the following base types depending on your axis type:
- DateTimeLabelProvider – used to provide a DataContext for labels on the DateTimeAxis.
- NumericLabelProvider – used to provide a DataContext for labels on the NumericAxis and LogarithmicNumericAxis.
- TimeSpanLabelProvider – used to provide a DataContext for labels on the TimeSpanAxis.
- TradeChartAxisLabelProvider – used to provide a DataContext for labels on the CategoryDateTimeAxis.
We have also made a fix to v3.1.0.5122 so that even if you derive from LabelProviderBase you will not receive this binding error.
Please let me know if this helps,
Best regards,
Andrew
- Andrew Burnett-Thompson answered 10 years ago
- last edited 10 years ago
-
I changed custom label formatter base class from LabelProviderBase to NumericLabelProvider.Now the binding errors are not coming but the graph is not plotting (the data series have 20 no of points).Anything i need to change in the XAML or c#.
-
Hi Andrew I go through the article "Specifying Text Labels with ILabelProvider" and code accordingly is working perfectly.
-
That's excellent news, I'm glad the issue is resolved! Best regards, Andrew
- You must login to post comments
Please login first to submit.