UltraGrid MouseDown事件单独的列调整大小与其他左键单击

时间:2016-01-18 09:26:13

标签: vb.net infragistics ultragrid

我有一个显示一些数据的infragistics ultragrid组件。捕获的事件之一是MouseDown事件。 按下鼠标左键时,这可能意味着用户已选择项目,或者当前正在拖动列标题。

使用ElementFromPoint方法识别元素(见下文)。但是当我调整列标题的大小时,此方法仍将返回列表中的第一个数据元素。我需要知道用户何时修改列宽而不是选择或拖动项目。这可能吗?

Private Sub ugTask_MouseDown1(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles ugTask.MouseDown

        Select Case e.Button
            Case MouseButtons.Left
                Try

                    Dim aUIElement As Infragistics.Win.UIElement = ugTask.DisplayLayout.UIElement.ElementFromPoint(New Point(e.X, e.Y))

                    m_aRow = aUIElement.GetContext(GetType(Infragistics.Win.UltraWinGrid.UltraGridRow))

1 个答案:

答案 0 :(得分:0)

这并不完美,但我通过检查光标类型找到了解决方法。光标改变的唯一时间是我尝试调整列的大小。所以现在我可以做到

If Not cursor.Current = Cursors.Default Then
    Return
End If