/// <summary> /// Initializes a new instance of the SeriesDefinition class. /// </summary> public SeriesDefinition() { _legendItem = new LegendItem { Owner = this }; _legendItem.SetBinding(LegendItem.ContentProperty, new Binding(){Path=new PropertyPath("ActualTitle") , Source = this }); _legendItem.SetBinding(LegendItem.StyleProperty, new Binding(){Path=new PropertyPath("ActualLegendItemStyle") , Source = this }); _legendItems.Add(_legendItem); }
/// <summary> /// Initializes a new instance of the SeriesDefinition class. /// </summary> public SeriesDefinition() { _legendItem = new LegendItem { Owner = this }; _legendItem.SetBinding(LegendItem.ContentProperty, new Binding() { Path = new PropertyPath("ActualTitle"), Source = this }); _legendItem.SetBinding(LegendItem.StyleProperty, new Binding() { Path = new PropertyPath("ActualLegendItemStyle"), Source = this }); _legendItems.Add(_legendItem); }
/// <summary> /// Creates a legend item for each data point. /// </summary> /// <param name="dataPoint">The data point added.</param> protected override void AddDataPoint(DataPoint dataPoint) { base.AddDataPoint(dataPoint); PieDataPoint pieDataPoint = (PieDataPoint)dataPoint; int index = ActiveDataPoints.IndexOf(dataPoint) + 1; LegendItem legendItem = CreatePieLegendItem(dataPoint, index); // Grab a style enumerator if we don't have one already. if (_resourceDictionaryEnumerator == null) { _resourceDictionaryEnumerator = GetResourceDictionaryWithTargetType(this, typeof(PieDataPoint), true); } if (_resourceDictionaryEnumerator.MoveNext()) { ResourceDictionary paletteResources = _resourceDictionaryEnumerator.Current.ShallowCopy(); pieDataPoint.PaletteResources = paletteResources; pieDataPoint.Resources.MergedDictionaries.Add(paletteResources); } else { pieDataPoint.PaletteResources = null; } pieDataPoint.ActualDataPointStyle = DataPointStyle ?? pieDataPoint.Resources[DataPointStyleName] as Style; pieDataPoint.SetBinding(PieDataPoint.StyleProperty, new Binding { Path = new PropertyPath(PieDataPoint.ActualDataPointStyleName), Source = pieDataPoint }); if (LegendItemStyle != null || pieDataPoint.Resources.ContainsKey(LegendItemStyleName)) { pieDataPoint.ActualLegendItemStyle = LegendItemStyle ?? (pieDataPoint.Resources[LegendItemStyleName] as Style); } legendItem.SetBinding(LegendItem.StyleProperty, new Binding { Path = new PropertyPath(ActualLegendItemStyleName), Source = pieDataPoint }); _dataPointLegendItems[dataPoint] = legendItem; LegendItems.Add(legendItem); UpdateLegendItemIndexes(); }
/// <summary> /// Creates a legend item. /// </summary> /// <returns>A legend item for insertion in the legend items collection. /// </returns> /// <param name="owner">The owner of the new LegendItem.</param> protected virtual LegendItem CreateLegendItem(DataPointSeries owner) { LegendItem legendItem = new LegendItem() { Owner = owner }; legendItem.SetBinding(LegendItem.StyleProperty, new Binding(){Path=new PropertyPath(ActualLegendItemStyleName) , Source = this }); legendItem.SetBinding(LegendItem.ContentProperty, new Binding(){Path=new PropertyPath(TitleName) , Source = this }); return legendItem; }