|
private void AddDataButton_Click(object sender, RoutedEventArgs e)
{
var model = new Model() { XValue = counter * 10, YValue = random.Next(100, 150) };
var dataSource = (this.LineSeries1.ItemsSource as ObservableCollection<Model>);
dataSource.Add(model);
counter++;
}
|
|
private void ChangeDataButton_Click(object sender, RoutedEventArgs e)
{
var model = new Model() { XValue = 10, YValue = random.Next(100, 150) };
var dataSource = (this.LineSeries1.ItemsSource as ObservableCollection<Model>);
dataSource[0] = model;
}
|
|
<chart:SfChart Margin="20">
…
<chart:LineSeries XBindingPath="XValue"
YBindingPath="YValue"
ItemsSource="{Binding Data}"
x:Name="LineSeries1"
ListenPropertyChange="True"/>
</chart:SfChart>
|
|
public class Model : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged;
private double yValue { get; set; }
…
public double YValue
{
get
{
return yValue;
}
set
{
yValue = value;
OnPropertyChanged("YValue");
}
}
private void OnPropertyChanged(string propertyName)
{
PropertyChangedEventHandler handler = PropertyChanged;
if(handler != null)
{
handler(this, new PropertyChangedEventArgs(propertyName));
}
}
}
|
|
private void ChangeValueButton_Click(object sender, RoutedEventArgs e)
{
var dataSource = (this.LineSeries1.ItemsSource as ObservableCollection<Model>);
dataSource[2].YValue = random.Next(100,150);
}
|