2

ユーザーがクリックした行を決定する GridControl に MouseDown イベントがあります。

    private void genericView_MouseDown(object sender, MouseEventArgs e)
    {
        var hitInfo = vw.CalcHitInfo(new Point(e.X, e.Y));
        //do other things with the hitInfo object
    }

このコードは、期待どおりに機能します。

ただし、このコードは

    private void genericView_MouseDown(object sender, MouseEventArgs e)
    {
        var hitInfo = vw.CalcHitInfo(new Point(MousePosition.X, MousePosition.Y));
        //do other things with the hitInfo object
    }

コンパイルはしますが、不正確なデータを返します。

MouseEventArgs と MousePosition は同じ座標になると思いますが、そうではないと思います。何が違うの?

4

1 に答える 1

3

e.Xe.Yはコントロールに相対的ですMousePositionが、 は に相対的Screen.Boundsです。

于 2013-11-06T18:53:54.720 に答える