HeJ小鼠,
我正在尝试为我的ListView制作som一般功能,以便可以直接将ListView的内容导出为CSV。
我试图通过获取datacontext并分析ICollectionView来实现此目的。从这里我可以通过SourceCollection访问来自ICollectionView的所有对象,其中我(现在)假设排序/和过滤得到尊重。
这里的挑战是我只想输出也在ListView中显示的列。
当迭代我的集合时,是否存在一个函数,如果类中的属性(带有通知suppoert)具有绑定,我可以躲过它?
现在最好的解决方案就是输出所有属性,但我对此并不感兴趣,因为看起来并不好玩。
Thx in advanced。
/伊恩
答案 0 :(得分:2)
我建议您认识到确定显示哪些数据的能力是业务要求。因此,您应该在模型中体现这一要求。换句话说,您的模型应该清楚地指出哪些列是可见的 - 您不应该尝试从现有属性中推断出这些列,也不应该检查您的视图。
有很多方法可以做到这一点,但关键是要在模型中掌握这些信息。
答案 1 :(得分:0)
为什么不直接查看DataTemplate并对其进行评估,包括内部绑定?
答案 2 :(得分:0)
没有简单的方法可以做到这一点......您可以检查目标端的绑定(依赖属性),但不能检查源端。
对于您尝试执行的操作,您可以遍历ListView
的列并检查其DisplayMemberBinding
,但可能未定义(可能使用{{定义单元格内容) 1}}属性代替)。