我试图做到这一点,以便当用户将鼠标悬停在我的 DataGrid / dataview 中的一行上时,每一行都会显示不同的工具提示结果。
我无法真正弄清楚这一点。使用 DataGrid 我如何在每一行上说 mouseOver 并给出行特定的数据?似乎我所有常用的在线资源都没有出现!
不是如果有办法使用datagridview进行这项工作,我不知道如何填充它(datagridview),因为每次程序运行时我的表的长度都会变化。(程序会跟踪信号,所以如果收到更多信号,那么表格就会有更多行......)
*注意:这是 Visual Studios 2005 环境中的 Visual C# 2.0。
*最终得到以下结果:
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;
prop = datagridSignal.PointToClient(prop);
myHitTest = datagridSignal.HitTest(prop.X, prop.Y);
this.toolTip.SetToolTip(datagridSignal, " ID = '" + (int)dv[myHitTest.Row][0] + "' ");
}