在datagrid的mousup事件中添加如下代码.能取得选中行的信息.DataGrid.HitTestInfo hti; hti=youDataGrid.HitTest(e.X ,e.Y ); switch(hti.Type) { case System.Windows.Forms.DataGrid.HitTestType.None: break; case System.Windows.Forms.DataGrid.HitTestType.Cell: this.youDataGrid.Select(hti.Row ); strC=this.youDataGrid[hti.Row,0].ToString().Trim(); strCode=this.youDataGrid[hti.Row,1].ToString().Trim(); break; case System.Windows.Forms.DataGrid.HitTestType.ColumnHeader: break; case System.Windows.Forms.DataGrid.HitTestType.RowHeader: strC=this.youDataGrid[hti.Row,0].ToString().Trim();//0:为列idx strCode=this.youDataGrid[hti.Row,1].ToString().Trim(); break; case System.Windows.Forms.DataGrid.HitTestType.ColumnResize: break; case System.Windows.Forms.DataGrid.HitTestType.RowResize: break; case System.Windows.Forms.DataGrid.HitTestType.Caption: break; case System.Windows.Forms.DataGrid.HitTestType.ParentRows: break; }
hti=youDataGrid.HitTest(e.X ,e.Y );
switch(hti.Type)
{
case System.Windows.Forms.DataGrid.HitTestType.None:
break;
case System.Windows.Forms.DataGrid.HitTestType.Cell:
this.youDataGrid.Select(hti.Row );
strC=this.youDataGrid[hti.Row,0].ToString().Trim();
strCode=this.youDataGrid[hti.Row,1].ToString().Trim();
break;
case System.Windows.Forms.DataGrid.HitTestType.ColumnHeader:
break;
case System.Windows.Forms.DataGrid.HitTestType.RowHeader:
strC=this.youDataGrid[hti.Row,0].ToString().Trim();//0:为列idx
strCode=this.youDataGrid[hti.Row,1].ToString().Trim();
break;
case System.Windows.Forms.DataGrid.HitTestType.ColumnResize:
break;
case System.Windows.Forms.DataGrid.HitTestType.RowResize:
break;
case System.Windows.Forms.DataGrid.HitTestType.Caption:
break;
case System.Windows.Forms.DataGrid.HitTestType.ParentRows:
break;
}