HI Team,
I am working on telerik controls from past year, Your controls are awesome as well as your support, Now i struck again with RadChart,
I build my chart with bar series , when number of bars are more than 7 ,I am applying zoom , So that a scroll bar will be visible and user can scroll. I am applying tooltip for every bar, to populate data I am taking Item index as the identifier, Until and unless i have scroll bar everthing works fantastic, But when user scroll chart, irrespective of item number, the first bar series visible in chart gets item index as zero, so i am ending up with wrong values in my tool tips.
Here goes my code.
tooltip data
I am attaching my screen shots here, Even though both are different bars in chart , us and canada , they both have item index as zero when scroll bar selected, so it ends up with same tool tip values,
SO my question is how to get item index of an item in chart, irrespective of scroll bar ( Now what happening is I f i scroll my chart towards right, what ever the item comes first is getting item index as 0)
Hope I explained my issue clearly.
I am working on telerik controls from past year, Your controls are awesome as well as your support, Now i struck again with RadChart,
I build my chart with bar series , when number of bars are more than 7 ,I am applying zoom , So that a scroll bar will be visible and user can scroll. I am applying tooltip for every bar, to populate data I am taking Item index as the identifier, Until and unless i have scroll bar everthing works fantastic, But when user scroll chart, irrespective of item number, the first bar series visible in chart gets item index as zero, so i am ending up with wrong values in my tool tips.
Here goes my code.
SeriesMapping series5 =
new
SeriesMapping();
series5.SeriesDefinition =
new
LineSeriesDefinition();
series5.SeriesDefinition.AxisName =
"PCST"
;
series5.SeriesDefinition.ShowItemToolTips =
true
;
series5.SeriesDefinition.Appearance.Fill =
new
SolidColorBrush(Colors.Red);
series5.SeriesDefinition.ItemLabelFormat =
"N1"
;
ItemMapping series5_Mapping;
ItemMapping catPCFMapping;
ItemMapping PCFValMapping;
series5.LegendLabel =
"PC Sell Thru Actual"
;
series5_Mapping =
new
ItemMapping(
"PCSTActual_Unit"
, DataPointMember.YValue);
catPCFMapping =
new
ItemMapping(
"LevelName"
, DataPointMember.XCategory);
PCFValMapping =
new
ItemMapping(
"LevelID"
, DataPointMember.XValue);
series5.ItemMappings.Add(series5_Mapping);
series5.ItemMappings.Add(catPCFMapping);
series5.ItemMappings.Add(PCFValMapping);
//rcCountryAttach_Summary.SeriesMappings.Add(series5);
if
(Data.Count() > 7)
{
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.RangeStart = 0;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.RangeEnd = 0.30;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.MinZoomRange = .001;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.ScrollMode = ScrollMode.ScrollAndZoom;
rcCountryAttach_Summary.DefaultView.ChartArea.AxisX.StepLabelLevelCount = 2;
rcCountryAttach_Summary.DefaultView.ChartArea.AxisX.StepLabelLevelHeight = 15;
}
else
{
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.RangeEnd = 1;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.MinZoomRange = 0.001;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.ScrollMode = ScrollMode.None;
rcCountryAttach_Summary.DefaultView.ChartArea.ZoomScrollSettingsX.RangeStart = 0;
rcCountryAttach_Summary.DefaultView.ChartArea.AxisX.StepLabelLevelCount = 1;
rcCountryAttach_Summary.DefaultView.ChartArea.AxisX.StepLabelLevelHeight = 15;
}
rcCountryAttach_Summary.ItemsSource = Data;
tooltip data
void
ChartArea_ItemToolTipOpening(ItemToolTip2D tooltip, ItemToolTipEventArgs e)
{
// MessageBox.Show("Hello");
int
item = e.ItemIndex;
//throw new NotImplementedException();
Grid Tooltipgrid =
new
Grid();
ColumnDefinition cd =
new
ColumnDefinition();
RowDefinition rd =
new
RowDefinition();
Tooltipgrid.Children.Clear();
Tooltipgrid.ColumnDefinitions.Clear();
Tooltipgrid.RowDefinitions.Clear();
///add columns , ROws,
TextBlock tb12 =
new
TextBlock();
tb12.Foreground =
new
SolidColorBrush(Colors.Black);
tb12.HorizontalAlignment = System.Windows.HorizontalAlignment.Center;
tb12.VerticalAlignment = System.Windows.VerticalAlignment.Center;
tb12.Text = (TooltipData[e.ItemIndex].PCSTActual_Unit * 1000000).ToString(
"###,##"
);
// +" M";
Tooltipgrid.Children.Add(tb12);
Grid.SetRow(tb12, 1);
Grid.SetColumn(tb12, 1);
I am attaching my screen shots here, Even though both are different bars in chart , us and canada , they both have item index as zero when scroll bar selected, so it ends up with same tool tip values,
SO my question is how to get item index of an item in chart, irrespective of scroll bar ( Now what happening is I f i scroll my chart towards right, what ever the item comes first is getting item index as 0)
Hope I explained my issue clearly.