using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using LiveCharts;
using LiveCharts.Wpf;
namespace Wpf.CartesianChart.Energy_Predictions
{
///
/// Interaction logic for EnergyPredictionExample.xaml
///
public partial class EnergyPredictionExample : UserControl
{
public EnergyPredictionExample()
{
InitializeComponent();
Series = new SeriesCollection
{
new StackedAreaSeries
{
Values = new ChartValues {20, 30, 35, 45, 65, 85},
Title = "Electricity"
},
new StackedAreaSeries
{
Values = new ChartValues {10, 12, 18, 20, 38, 40},
Title = "Water"
},
new StackedAreaSeries
{
Values = new ChartValues {5, 8, 12, 15, 22, 25},
Title = "Solar"
},
new StackedAreaSeries
{
Values = new ChartValues {10, 12, 18, 20, 38, 40},
Title = "Gas"
}
};
DataContext = this;
}
public SeriesCollection Series { get; set; }
private void ListBox_OnPreviewMouseDown(object sender, MouseButtonEventArgs e)
{
var item = ItemsControl.ContainerFromElement(ListBox, (DependencyObject)e.OriginalSource) as ListBoxItem;
if (item == null) return;
var series = (StackedAreaSeries) item.Content;
series.Visibility = series.Visibility == Visibility.Visible
? Visibility.Hidden
: Visibility.Visible;
}
}
}