0
我正在使用zedgraph和datagridview的窗體應用程序。 datagridview對於線圖中的每個點都有一行,當用戶單擊圖中的一個點時,我希望它突出顯示datagridview中的等效行。ZedGraph:檢查線圖上點擊哪個數據點?
那麼如何找出用戶點擊了哪個點? (我不需要datagridview部分的任何代碼)。
我正在使用zedgraph和datagridview的窗體應用程序。 datagridview對於線圖中的每個點都有一行,當用戶單擊圖中的一個點時,我希望它突出顯示datagridview中的等效行。ZedGraph:檢查線圖上點擊哪個數據點?
那麼如何找出用戶點擊了哪個點? (我不需要datagridview部分的任何代碼)。
我想通了。您可以使用GraphPane.FindNearestObject
來查找點擊的點。
似乎nearestObject
是null
,如果你不點擊一個點,爲LineItem
類型的,如果你這樣做,然後index
會告訴你點擊了哪個點。
private void zedGraphControl_MouseClick(object sender, MouseEventArgs e)
{
object nearestObject;
int index;
this.zedGraphControl.GraphPane.FindNearestObject(new PointF(e.X, e.Y), this.CreateGraphics(), out nearestObject, out index);
if (nearestObject != null && nearestObject.GetType() == typeof(LineItem))
{
// 'index' is the index of that data point
dataGridView.CurrentCell = dataGridView.Rows[index].Cells[0];
}
}
不熟悉ZedGraph。在MSChart中,您將在Mouseclick事件中執行HitTest。 – TaW