If you click on a cell in a row, the row will be activated, but not selected (depending on your CellClickAction property setting). So you probably want to use the ActiveRow here, not the Selected.Rows.
Try using AfterRowActivate, instead.
private void ultraGrid1_AfterRowActivate(object sender, EventArgs e) { UltraGrid grid = (UltraGrid)sender; Debug.WriteLine(grid.ActiveRow.Cells["My Primary Key"].Value); }
i tried it, it works whenever the selection is changed
private void ultraGrid1_AfterSelectChange(object sender, Infragistics.Win.UltraWinGrid.AfterSelectChangeEventArgs e)
{
if(e.Type == typeof(UltraGridRow))
ultraGrid1.Selected.Rows[0].GetCellValue("columnKey");
}