Hi James,
Issue 1:
Are you using the GridDataBoundGrid? If so, you can handle the CurrentCellActivated / CurrentCellMoved(For every cellmovement) event to get the record using the below code.
CurrencyManager cm = this.BindingContext[this.grid.DataSource] as CurrencyManager;
DataView dv = cm.List as DataView;
DataRowView currentRecord = cm.Current as DataRowView ;
Console.WriteLine(currentRecord[0]) ;
Refer the below forum thread for getting the selected rows in a grid.
http://www.syncfusion.com/Support/Forums/message.aspx?MessageID=47865Issue 2:
Are you using the GridControl? If so, you can handle the CurrentCellMoved event to get the cell values in a row using the below code.
//Bcoz Gridcontrol is a cell-based control..
GridControl grid = sender as GridControl;
GridCurrentCell cc = grid.CurrentCell;
for(int i = 1; i < grid.ColCount;i++)
Console.Write(" => " + grid.Model[cc.RowIndex,i].Text);
Console.WriteLine();
Let me know if this helps.
Thanks,
Haneef