private IEnumerable<ChartDataItem> BatchCreateChartItems(double[] computedResult)
{
for (int i = 0; i < 4; i++)
{
yield return new ChartDataItem()
{
Tag = i.ToString(),
Text = Dictionary.AlarmDictionary.AlarmCodeDescriptionDict[i.ToString()],
DValue = computedResult[i],
ItemBrush = (Brush)((IValueConverter)Application.Current.FindResource("GlobalAlarmStatusBrushConverter")).Convert( i, typeof(Brush), null, null)
};
}
}
1、IEnumerable<ChartDataItem>:表示该方法返回一个枚举器
2、yield return:表示以迭代的方式向“该方法”的调用端返回值(使用这种语法的前提条件是:“该方法”的返回值类型必须为“枚举器”,并且“该枚举器”支持在集合上进行简单迭代。
3、new ChartDataItem(){。。。。。。},对象初始化器
简要说明:
IEnumerable<ChartDataItem>的“原型”就是IEnumerable<T>,说明如下:
IEnumerable<T> :它是一个公开枚举器,该枚举器支持在指定类型的集合上进行简单迭代 ; T:类型参数,它表示要枚举的对象的类型(例如:IEnumerable<ChartDataItem>,它要枚举的对象类型就是“ChartDataItem”)。