示例#1
0
        public void DrawChart()
        {
            ChartInstance.Series.Clear();
            bool isOrdered = ExtendedChartSeries.Any(e => e.ItemsSource.Any(i => i.NumericChartValue != 0));

            ExtendedChartSeries.ForEach(c =>
            {
                ChartInstance.Series.Add(c.ChartSeries);
                if (isOrdered)
                {
                    c.ChartSeries.ItemsSource = c.ItemsSource.OrderBy(i => i.NumericChartValue);
                }
                else
                {
                    c.ChartSeries.ItemsSource = c.ItemsSource;
                }
            });
            this.ChartLegendItems = new ObservableCollection <ChartLegendItemViewModel>(ChartInstance.ChartLegendItems);
            this.RaisePropertyChanged("ChartLegendItems");
        }
示例#2
0
 public void FillDataCollection()
 {
     if (this.ExtendedChartSeries != null && this.ExtendedChartSeries.Any() && this.DataCollection != null)
     {
         DataCollection.Clear();
         bool isOrdered = ExtendedChartSeries.Any(e => e.ItemsSource.Any(i => i.NumericChartValue != 0));
         ExtendedChartSeries.ForEach(c =>
         {
             if (c.ItemsSource == null || !c.ItemsSource.Any())
             {
                 return;
             }
             if (isOrdered)
             {
                 foreach (var item in c.ItemsSource.OrderBy(i => i.NumericChartValue))
                 {
                     if (item.ChartValue != 0)
                     {
                         DataCollection.Add(item);
                     }
                 }
             }
             else
             {
                 foreach (var item in c.ItemsSource)
                 {
                     if (item.ChartValue != 0)
                     {
                         DataCollection.Add(item);
                     }
                 }
             }
         });
         RaisePropertyChanged("DataCollection");
     }
 }