Я использую библиотеку SyncFusion UWP для создания интерфейса с диаграммой внутри.Я последовал примеру Getting Started , но не могу заставить его работать.Следующий код содержит некоторые модификации, которые я сделал для удовлетворения потребностей своего приложения.
Модель
public class Voltage
{
public DateTime Timestamp;
public double Value;
}
ViewModel Я добавил свойство notify, измененное
public class VoltageViewModel : INotifyPropertyChanged
{
public List<Voltage> Data { get; set; }
public VoltageViewModel()
{
Data = new List<Voltage>()
{
new Voltage() { Timestamp = DateTime.Now.AddMinutes(-1), Value = 5.1 },
new Voltage() { Timestamp = DateTime.Now.AddMinutes(-2), Value = 4.9 },
new Voltage() { Timestamp = DateTime.Now.AddMinutes(-3), Value = 4.85 },
new Voltage() { Timestamp = DateTime.Now.AddMinutes(-4), Value = 5.01 }
};
}
public event PropertyChangedEventHandler PropertyChanged = delegate { };
public void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
// Raise the PropertyChanged event, passing the name of the property whose value has changed.
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
XAML
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:ADSO.ViewModel"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:syncfusion="using:Syncfusion.UI.Xaml.Charts"
x:Class="ADSO.MainPage"
mc:Ignorable="d"
Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
<Page.DataContext>
<local:VoltageViewModel/>
</Page.DataContext>
<Grid>
<syncfusion:SfChart HorizontalAlignment="Center" VerticalAlignment="Center" Margin="20,20,20,20">
<syncfusion:SfChart.PrimaryAxis>
<syncfusion:DateTimeAxis Header="Time" Interval="10" IntervalType="Minutes" Minimum="9/22/2018" Maximum="9/23/2018"/>
</syncfusion:SfChart.PrimaryAxis>
<syncfusion:SfChart.SecondaryAxis>
<syncfusion:NumericalAxis Header="Voltage (V)"/>
</syncfusion:SfChart.SecondaryAxis>
<syncfusion:LineSeries ItemsSource="{Binding Path=Data}" XBindingPath="Timestamp" YBindingPath="Value" >
</syncfusion:LineSeries>
</syncfusion:SfChart>
</Grid>
Я не думаю, что это проблема с SyncFusion, и я могу подтвердить, что график рисуетуспешно, но без данных.Это проблема с моей собственной реализацией, но я не могу понять проблему.