【发布时间】:2012-05-23 16:13:16
【问题描述】:
private void datagridSignal_MouseMove(object sender, MouseEventArgs e)
{ this.toolTip.Hide(datagridSignal);
this.toolTip.RemoveAll();
DataTable dt = GetSignalTable();
DataView dv = new DataView(dt);
Point prop = new Point(e.X, e.Y);
System.Windows.Forms.DataGrid.HitTestInfo myHitTest;
myHitTest = datagridSignal.HitTest(prop.X, prop.Y);
this.toolTip.SetToolTip(datagridSignal, " ID = '" + (int)dv[myHitTest.Row][0] + "' '" + myHitTest.Row + "'");
}
到目前为止,这是我的代码,不幸的是它没有提供准确的结果。由于某种原因,即使显示了正确的索引,它也会随机混淆 ID 的顺序。
***使用数据网格,而不是数据网格视图
***Visualstudio2005环境下的visual C# 2.0
编辑:
private void dataGridSignal_MouseMove(object sender, MouseEventArgs e)
{
this.toolTip.Hide(dataGridSignal);
this.toolTip.RemoveAll();
System.Windows.Forms.DataGrid.HitTestInfo myHitTest;
myHitTest = dataGridSignal.HitTest(e.X, e.Y);
this.toolTip.SetToolTip(dataGridSignal, " ID = " + ((int)this.GetTable().Rows[myHitTest.Row][0]).ToString() + " "+ myHitTest.Row.ToString());
}
【问题讨论】:
-
你不能用
datagridSignal代替dt和dv吗?连同 prop 变量,它们似乎都没有必要。 -
是的,这会清理代码,但我想我会使用变量来使问题尽可能清晰。它无助于解决我的问题。
标签: c# datagrid datatable tooltip c#-2.0