UltraGrid MouseDown 事件将列大小调整与其他左键单击分开

UltraGrid MouseDown event separate column resize from other left clicks

我有一个显示一些数据的基础设施超网格组件。捕获的事件之一是 MouseDown 事件。 当按下鼠标左键时,这可能意味着用户已经选择了一个项目,或者当前正在拖动列 headers。

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

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))

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

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