J'ai des problèmes avec LiveCharts. Je vais ajouter des données en temps réel à une collection de série.livecharts erreur de moulage de plusieurs séries
Ceci est mon Xaml:
<lvc:CartesianChart DisableAnimations="True"
Hoverable="False"
DataTooltip="{x:Null}"
Series="{Binding Series}"
Zoom="Xy"
Width="1300"
/>
. J'ai créé une propriété Série:
private SeriesCollection series;
public SeriesCollection Series
{
get { return series; }
set { SetProperty(ref series, value, "Series"); }
}
initialisées dans le constructeur:
Series = new SeriesCollection();
Series.Add(new GLineSeries()
{
Name = debugChannelSelected.Name.Replace(' ', '_'),
Title = debugChannelSelected.Name,
Stroke = (Brush)new BrushConverter().ConvertFromString(debugChannelSelected.Color),
Values = new GearedValues<double>(),
Fill = Brushes.Transparent,
PointGeometry = null
});
}
le debugChannelSelected est reçu par Messenger.
Tous les 100ms Je vais ajouter un nouveau double à ma collection de série:
for (var j = 0; j < SelectedChannels.Count(); j++)
{
if (SelectedChannels[j] != null)
{
var serie =
Series.FirstOrDefault(w => w.Title.Equals(SelectedChannels[j]));
for (var i = 0; i < dataSize; i++)
{
var dbt = Convert.ToDouble(rnd.Next(-1000, 10000));
if (serie != null)
{
dbtValues[i] = dbt;
serie.Values.Add(dbt);
if (IsContinuousAcquisition && serie.Values.Count > 1000)
{
serie.Values.RemoveAt(0);
}
}
var dbtGear = dbtValues.AsGearedValues();
serie.Values.AddRange(dbtValues);
}
else
break;
}
mais j'obtenir une erreur de casting dans serie.Values.AddRange (dbtValues); . Avez-vous des suggestions sur la façon de le résoudre?
Tia.