/// <summary> /// Removes a series from the plot area. /// </summary> /// <param name="series">The series to remove from the plot area. /// </param> private void RemoveSeriesFromPlotArea(Series series) { AggregatedObservableCollection<UIElement> legendItemsList = LegendItems as AggregatedObservableCollection<UIElement>; legendItemsList.ChildCollections.Remove(series.LegendItems); ISeriesHost host = series as ISeriesHost; if (host != null) { host.GlobalSeriesIndexesInvalidated -= OnChildSeriesGlobalSeriesIndexesInvalidated; } series.SeriesHost = null; }
public static IList<DataPoint> GetDataPointsForSeries(Series series) { return series.GetVisualDescendents().OfType<DataPoint>().Where(dataPoint => dataPoint.Parent.GetType() == typeof(Canvas)).ToList(); }
/// <summary> /// Adds a series to the plot area and injects chart services. /// </summary> /// <param name="series">The series to add to the plot area.</param> private void AddSeriesToPlotArea(Series series) { series.SeriesHost = this; AggregatedObservableCollection<UIElement> chartLegendItems = this.LegendItems as AggregatedObservableCollection<UIElement>; int indexOfSeries = this.Series.IndexOf(series); chartLegendItems.ChildCollections.Insert(indexOfSeries, series.LegendItems); ISeriesHost host = series as ISeriesHost; if (host != null) { host.GlobalSeriesIndexesInvalidated += OnChildSeriesGlobalSeriesIndexesInvalidated; } }