我正在使用DevExpress.XtraGrid.GridControl
和c#中的双击事件。事件处理程序签名将对象和EventArgs作为其参数:
private void gvHL7_DoubleClick(object sender, EventArgs e){
.
.
.
}
但是,我想使用.Point属性,而EventArgs没有该属性。我知道DevExpress.XtraGrid.Views.Grid.GridMenuEventArgs会这样做,但它说这是一个无效的转换。如果我想访问.Point属性,我应该将EventArgs实例转换为什么类型?
编辑:我正在使用的双击功能由devexpress为他们的网格提供。
答案 0 :(得分:2)
请参阅DevExpress Support site中的此示例。您需要投放sender
才能获得Point
。
private void gridView1_DoubleClick(object sender, EventArgs e)
{
GridView view = (GridView)sender;
Point pt = view.GridControl.PointToClient(Control.MousePosition);
}
答案 1 :(得分:0)
C#中的DoubleClick
事件只会告诉您发生了双击。如果您需要鼠标坐标,则需要捕获MouseClick
事件或使用控件抛出事件的MousePosition
属性(在这种情况下,gvHL7.MousePosition
最有可能)。
答案 2 :(得分:0)
我解决了问题,但无法获得点属性。相反,我将EventArgs转换为MouseEventArgs并通过.X和.Y属性将坐标传递给函数。