gpt4 book ai didi

c# - 与图表控件的数据绑定(bind)给出 NotImplementedException

转载 作者:太空狗 更新时间:2023-10-29 20:57:58 30 4
gpt4 key购买 nike

我用我自己的 ChartPoint 类的 IEnumerable 为 Microsoft Chart 控件提供数据

    public class ChartPoint
{
public double Xvalue { get; set; }
public double Yvalue { get; set; }
public string Url { get; set; }
public string Tooltip { get; set; }
}

然后我尝试对 IEnumerable 进行数据绑定(bind):

serie.Points.DataBind(points, "Xvalue", "Yvalue", "Tooltip=Tooltip,Url=Url");

但我随后在那一行遇到了 NotImplementedException:

 System.Linq.Iterator`1.System.Collections.IEnumerator.Reset() +29
System.Web.UI.DataVisualization.Charting.DataPointCollection.DataBind(IEnumerable dataSource, String xField, String yFields, String otherFields) +313

我做错了什么?

最佳答案

您使用的是 C# 迭代器吗?

C# 迭代器不会在生成的 IEnumerator 上实现 Reset 函数,如果调用它会抛出 NotImplementedException。看起来特定控件需要存在该方法。

您可能必须使用支持其迭代器重置的集合。实现此目的的最简单方法是使用 List<T>包装您现有的 IEnumerable<T>

例如

List<ChartPoint> list = new List<ChartPoint>(points);
serie.Points.DataBind(list, "Xvalue", "Yvalue", "Tooltip=Tooltip,Url=Url");

关于c# - 与图表控件的数据绑定(bind)给出 NotImplementedException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1098147/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com