using System; using System.Collections.Generic; using System.ComponentModel; using System.Drawing; using System.Data; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; namespace UserControls { public partial class ListViewWithSelection : ListView { protected override void WndProc(ref Message m) { // Swallow mouse messages that are not in the client area if (m.Msg >= 0x201 && m.Msg <= 0x209) { Point pos = new Point(m.LParam.ToInt32()); var hit = this.HitTest(pos); switch (hit.Location) { case ListViewHitTestLocations.AboveClientArea: case ListViewHitTestLocations.BelowClientArea: case ListViewHitTestLocations.LeftOfClientArea: case ListViewHitTestLocations.RightOfClientArea: case ListViewHitTestLocations.None: return; } } base.WndProc(ref m); } public ListViewWithSelection() { InitializeComponent(); } } }