急急急   索引超出数组界限
string[] row120 = new string[dataGridViewUser.Columns.Count];
                 for (int intNum2 = 0; intNum2 < dataGridViewUser.ColumnCount; intNum2++)
                 {
                     row120[intNum2] = dlRoleList.GetItem(intNum).GetAttr(intNum2);
                 }
                 row120[2] = strShiftInfo;  //这句话老是提示索引超出数组界限  
                 dataGridViewUser.Rows.Add(row120);                                 
------解决方案--------------------就是数组长度不够了。
注意net数组下标是从0开始。
row120[2] 以为这你的数组长度至少是3.
------解决方案--------------------跟踪一下
------解决方案--------------------dataGridViewUser.Columns.Count小于3时就报这个错 比如等于2时
string[] row120 = new string[2];
这时只有 row120[0] 和 row120[1]了 没有你那个
------解决方案--------------------  row120[2] = strShiftInfo;
row120长度是多少?
应该是小于3的。。。