Hello,
I've encountered a non-standard behavior in The Bat! (version 11.2.2) related to keyboard-based selection within the ListView control. Specifically, the application does not correctly differentiate between the use of the Ctrl and Shift keys, ignoring the conventional distinction in how these keys are expected to function:
Ctrl should allow non-contiguous multi-selection
Shift should enable contiguous range selection
In my experience, the keyboard selection logic does not respect this separation, resulting in a confusing and inconsistent user experience that deviates from standard UI behavior.
This issue was observed in version 11.2.2, and I have intentionally avoided upgrading to newer versions due to concerns that subsequent releases might introduce even more severe bugs.
Has anyone else noticed this behavior? It would be helpful to hear from other users or receive clarification from the development team.
🧷 Behavior of the Ctrl Key in ListViewThe Ctrl key enables non-contiguous multi-selection in a ListView control. Here's how it works:
Ctrl + Arrow Keys Moves the focus between items without changing selection. This is useful for navigating the list without affecting the current selection state
.
Ctrl + Spacebar Toggles selection of the currently focused item — selects it if unselected, deselects it if already selected.
Ctrl + Click (if mouse is used) Adds or removes individual items from the selection set, allowing users to sel ect multiple items that are not adjacent.
Ctrl + A Selects all items in the ListView, provided that SelectionMode is set to Multiple or Extended.
🔧 Note: This behavior requires the ListView to support multi-selection. In WPF, this means setting SelectionMode="Extended"; in WinForms, MultiSelect = true.
📐 Behavior of the Shift Key in ListViewThe Shift key enables contiguous range selection. Here's how it functions:
Shift + Arrow Keys Selects all items between the anchor item (usually the last selected item) and the currently focused item. This creates a continuous block of selected items.
Shift + Spacebar Selects a range from the anchor to the focused item, similar to Shift + Arrow but triggered by a key press.
Shift + Click (if mouse is used) Selects all items between the first selected item and the clicked item, forming a range.
Shift + Home / End Selects fr om the current position to the start or end of the list, respectively.
🔧 Note: The ListView must support extended selection for this to work. The control internally tracks the anchor item to determine the range.