2014-01-18 101 views
0

我想要做下面的事情,但使用DevExpress的GridView,我該怎麼做?DevExpress GridView | DataGridView

List<RCDATA_INDEX> somethings = new List<RCDATA_INDEX>(); 

foreach (DataGridViewRow row in (IEnumerable)this.dataGridView1.Rows) 
{ 
    AZ.RCDATA_INDEX items = new AZ.RCDATA_INDEX 
    { 
     datasize = Convert.ToUInt32(row.Cells[5].Value.ToString()) 
    }; 
    item.filenum = Convert.ToUInt32(row.Cells[2].Value.ToString()[7].ToString()); 
    item.hash = row.Cells[1].Value.ToString(); 
    item.realname = row.Cells[3].Value.ToString(); 
    item.offset = Convert.ToUInt32(row.Cells[4].Value.ToString()); 
    item.new_value = row.Cells[6].Value.ToString(); 
    somethings.Add(items); 
} 

回答

1

您可以通過內的所有數據行遍歷一個GridView一個接一個,使用以下方法:

// Obtain the number of data rows. 
int dataRowCount = gridView.DataRowCount; 
// Traverse data rows 
for (int i = 0; i < dataRowCount; i++) { 
    object cellValue = gridView.GetRowCellValue(i, "... specify field name here ..."); 
    // do something with cell Value 

} 

請參考Traversing RowsObtaining and Setting Cell Values求助文章,詳細瞭解;

0

我寧願使用BindingSource並將其綁定到Gridview中。之後,如果你想操縱你的數據。你只需要像這樣調用:

List<RCDATA_INDEX> somethings = new List<RCDATA_INDEX>(); 
var Result = RCDataBS.Cast<RCDATA_INDEX>(); 
somethings.AddRange(Result); 

這將是使用此代碼容易得多,你不需要花你的資源,所有的數據轉換成模型。