logo
VitNX3 Documentation

# VitNX_ListView.OnMouseDown Method

Namespace: VitNX.UI.ControlsV1.Controls
Assembly: VitNX3 (in VitNX3.dll)
Raises the MouseDown event.
VB
C#
F#
C++
JScript
Copy

    protected override void OnMouseDown(
       MouseEventArgs e
    )

    This language is not supported or no code example is available.

#### Parameters

e
  MouseEventArgs

A MouseEventArgs that contains the event data.

Source code
VB
C#
F#
C++
JScript
Copy

    protected override void OnMouseDown(MouseEventArgs e)
     {
         base.OnMouseDown(e);

         if (Items.Count == 0)
             return;

         if (e.Button != MouseButtons.Left && e.Button != MouseButtons.Right)
             return;

         var pos = OffsetMousePosition;

         var range = ItemIndexesInView().ToList();

         var top = range.Min();
         var bottom = range.Max();
         var width = Math.Max(ContentSize.Width, Viewport.Width);

         for (var i = top; i <= bottom; i++)
         {
             var rect = new Rectangle(0, i * ItemHeight, width, ItemHeight);

             if (rect.Contains(pos))
             {
                 if (MultiSelect && ModifierKeys == Keys.Shift)
                     SelectAnchoredRange(i);
                 else if (MultiSelect && ModifierKeys == Keys.Control)
                     ToggleItem(i);
                 else
                     SelectItem(i);
             }
         }
     }

    This language is not supported or no code example is available.

Applies to

#### .NET Framework

Supported in: 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8

#### .NET Core

Supported in: 5.0+, 6.0+
See Also
VitNX_ListView Class
VitNX.UI.ControlsV1.Controls Namespace