private void myDataGrid_MouseDown(object sender,
System.Windows.Forms.MouseEventArgs e) //鼠标在datagrid上按下引起的事件
{
DataGrid myGrid = (DataGrid) sender;
System.Windows.Forms.DataGrid.HitTestInfo hti;
hti = myGrid.HitTest(e.X, e.Y);
switch (hti.Type) //用于判断鼠标点击的位置
{
case System.Windows.Forms.DataGrid.HitTestType.Cell : //表示点在网格单元
messagebox.show(datagrid[行号,列号]); //弹出想要的数据
break;
case System.Windows.Forms.DataGrid.HitTestType.RowHeader : //表示点在行头
messagebox.show(datagrid[行号,列号]); //弹出想要的数据
break;
}
}
这里屏蔽了很多事件,
一.获取datagrid控件的列数
dataGrid1.VisibleColumnCount二.获取datagrid控件的行数
dataGrid1.VisibleRowCount三.获取当前选中的列号
dataGrid1.CurrentCell.ColumnNumber四.获取当前选中的行号
dataGrid1.CurrentCell.RowNumber五.获取当前选中单元的值
dataGrid1[datagrid1.currentcell]六.获取指定单元的值
datagrid1[行号,列号]
System.Windows.Forms.MouseEventArgs e) //鼠标在datagrid上按下引起的事件
{
DataGrid myGrid = (DataGrid) sender;
System.Windows.Forms.DataGrid.HitTestInfo hti;
hti = myGrid.HitTest(e.X, e.Y);
switch (hti.Type) //用于判断鼠标点击的位置
{
case System.Windows.Forms.DataGrid.HitTestType.Cell : //表示点在网格单元
messagebox.show(datagrid[行号,列号]); //弹出想要的数据
break;
case System.Windows.Forms.DataGrid.HitTestType.RowHeader : //表示点在行头
messagebox.show(datagrid[行号,列号]); //弹出想要的数据
break;
}
}
这里屏蔽了很多事件,
一.获取datagrid控件的列数
dataGrid1.VisibleColumnCount二.获取datagrid控件的行数
dataGrid1.VisibleRowCount三.获取当前选中的列号
dataGrid1.CurrentCell.ColumnNumber四.获取当前选中的行号
dataGrid1.CurrentCell.RowNumber五.获取当前选中单元的值
dataGrid1[datagrid1.currentcell]六.获取指定单元的值
datagrid1[行号,列号]
选中某行的时候,就把值赋给result,在控件中添加一个公共方法:
public void SelectRecord()
{
frmSelectTable frm=new frmSelectTable(参数...);
frm.ShowDialog();
this.Return = frm.result;
}