【发布时间】:2014-10-13 14:02:43
【问题描述】:
我有带有工具包图表的 MVVM silverlight 应用程序。 在视图模型中,我创建了 ObservableCollection 属性:
private ObservableCollection<LineSeries> _lines = new ObservableCollection<LineSeries>();
public ObservableCollection<LineSeries> Lines
{
get { return _lines; }
set
{
_lines = value;
NotifyPropertyChanged("Lines");
}
}
然后在某些方法中,我用动态计数线填充这个集合:
List<SolidColorBrush> colors = BS2ColorSetHelper.GetSetColors();
for (int i = 0; i < remainderData.Count; i++)
{
LineSeries line = (colors.ElementAtOrDefault(i) != null)
? CreateNewLineSeriesWithColor(remainderData[i].DenominationName, remainderData[i].Coords, colors[i])
: CreateNewLineSeries(remainderData[i].DenominationName, remainderData[i].Coords);
line.Name = remainderData[i].DenominationName;
Lines.Add(line);
}
.........
现在我想将此 ObservableCollection 绑定到工具包图表系列。
<toolkit:Chart Name="chart">
<toolkit:Chart.Series>
????
</toolkit:Chart.Series>
</toolkit:Chart>
我试过了
Series="{Binding Path=Lines}"
但它不起作用。 Visual Studio 显示错误:“System.Windows.Data.Binding”类型的对象无法转换为“System.Collections.ObjectModel.Collection`1[System.Windows.Controls.DataVisualization.Charting.ISeries]”类型。我认为这是因为 Series 不是依赖属性。
【问题讨论】:
-
取决于控件
Chart中使用的属性,您可能需要查看控件制造商的文档
标签: c# xaml mvvm charts toolkit