Syncfusion图表支持在其图表中选择数据项(请参见here)。选择更改后,还会触发一个事件。
我有一个绑定到图表的TransactionEntry
个对象的列表,其中包括Amount
,Date
(绑定到图表)等信息以及其他几个元数据。
我正在尝试访问更改事件中的对象以获取元数据。 ChangedEvent
参数公开了一个名为NewPointInfo
的属性(请参见here),该属性属于对象类型。调试时,我可以看到该对象实际上是一个ChartDataPointInfo
对象,其中还包含一个NewItem
属性,该属性正是我要寻找的对象。
现在,我的问题是,由于NewPointInfo
的保护级别,我无法将ChartDataPointInfo
对象转换为ChartDataPointInfo
类型。 Syncfusion也没有记录这种类型,所以我想我不是要使用这种类型吗?
我的问题是:我如何从TransactionEntry
事件访问基础SelectionChanged
对象?我可以使用NewPointInfo
吗?如果可以,如何使用?
答案 0 :(得分:2)
我目前不在开发PC上进行尝试,但是我建议尝试研究ChartSelectionChangedEventArgs
中的SelectedSegment
property。
这是类型ChartSegment
的属性,它具有属性Item
,如果我没有记错的话,应该将其设置为要查找的基础收集项目。正如文档所说:
项目-获取或设置此细分受众群所属的数据对象。
答案 1 :(得分:0)
您可以使用:
(e.SelectedSegment.Item as List<object>)?[e.SelectedIndex] as YourObject
或者,更轻松地:
(e.NewPointInfo as ChartSegment).Item as YourObject
问题是您尝试将e.NewPointInfo强制转换为内部类ChartDataPointInfo。 ChartSegment是ChartDataPointInfo的父类,可以访问,并且是实际包含Item属性的类。