I upgraded my WPF controls to version 2011.2.712.35 to fix a problem with adding the Camera Extension to a Chart for zooming. When I did this I started getting a very odd error in a call to add a LegendItemMarkerShape to the Legend. The chart xaml looks like this:
<UserControl x:Class="ABC.APP.ProfileWpf.ChartControl" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="300" xmlns:telerik="http://schemas.telerik.com/2008/xaml/presentation"> <Grid> <telerik:RadChart Margin="0" Name="mChartControl"> <telerik:RadChart.DefaultSeriesDefinition> <telerik:Bar3DSeriesDefinition /> </telerik:RadChart.DefaultSeriesDefinition> <telerik:RadChart.DefaultView> <telerik:ChartDefaultView> <telerik:ChartDefaultView.ChartLegend> <telerik:ChartLegend Name="legend" /> </telerik:ChartDefaultView.ChartLegend> <telerik:ChartDefaultView.ChartArea> <telerik:ChartArea LegendName="legend" DimensionMode="Strict3D"> <telerik:ChartArea.Extensions> <telerik:CameraExtension /> </telerik:ChartArea.Extensions> </telerik:ChartArea> </telerik:ChartDefaultView.ChartArea> </telerik:ChartDefaultView> </telerik:RadChart.DefaultView> </telerik:RadChart> </Grid> and the code where I pass the marker shape looks like this:
mChartControl.DefaultView.ChartArea.Legend.LegendItemMarkerShape = value;
I am using VS2010 and the weird thing here is if I let the code run without inspecting the object in the QuickWatch
Dialog then it will exception with the error "Object reference not set to an instance of an object.". If I
go ahead and inspect the mChartControl object and drill all of the way down to the Lengend object the Legend
object will show "+Legend{Telerik.Windows.Controls.Charting.ChartLegend Header: Items.Count:0}" that it does
exist and the code will run as it should without exception, but if I just do a hover over the string in the
IDE the Legend oject will show a value of NULL and will exception. Please let me know what is going on here
and what can be done to correct this. Thanks for your help out there.