获取BandedGridView(DevExpress)</datarow>的列表<datarow>

时间:2013-12-23 20:07:15

标签: c# devexpress

我在WinForms C#项目中使用DevExpress 2009控件。我在GridControl上发现了BandedGridView(_currentView)的一个问题。 GridControl的DataSource是类型化列表(List<MismatchedInfo>())。我写了这段代码:

List<DataRow> apps = new List<DataRow>();
for (int i = 0; i < _currentView.DataRowCount; i++)
    apps.Add(_currentView.GetDataRow(i));

但结果列表应用程序由11个空数据行组成。 在调试器中,我看到:

_currentView.DataRowCount == 11
_currentView.GetDataRow(1) == null
_currentView.GetRow(1) != null (object MismatchedInfo from DataSource)

有人能告诉我如何在这种情况下获取List吗?我做错了什么?

感谢。

1 个答案:

答案 0 :(得分:2)

仅当GridControl绑定到DataTable时才使用GetDataRow。相反,您应该使用GetRow方法并将其对象返回值强制转换为MismatchedInfo类的实例。

for(int i = 0; i < _currentView.DataRowCount; i++)
{
    MistmatchedInfo info = (_currentView.GetRow(i) as MismatchedInfo);
    //do something
}