You can also get it through a BindingContext and CurrencyManager but I've never actually done that so I'll leave that to someone else to demonstrate, or you could search the forum for existing examples.
It's got nothing to do with 2003 and 2005. It's got to do with the fact that the DataGridView and DataGrid are two different controls. What's the problem with what I suggested previously?
try
{
cellvalue2=dataGridView1[iRownr, iColnr+1];
cellvalue3=dataGridView1[iRownr, iColnr+2];
cellvalue4=dataGridView1[iRownr, iColnr+3];
DateTime MyDate = DateTime.Parse(dataGridView1[iRownr, iColnr+4].ToString());
cellvalue5 = MyDate.ToString("MM/dd/yyyy");
cellvalue6=dataGridView1[iRownr, iColnr+6];
txtEmpID.Text=cellvalue1.ToString();
txtLname.Text=cellvalue2.ToString();
txtFname.Text= cellvalue3.ToString();
txtMI.Text=cellvalue4.ToString();
mskDateHired.Text=cellvalue5.ToString();
cboSectionCode.Text=cellvalue6.ToString();
}
catch
{
MessageBox.Show("Please don't click the column, if you want to change the data click the pointer or \n search again to navigate the data.","Unexpected Error",MessageBoxButtons.OK,MessageBoxIcon.Error);