ccrpminilogo.gif (1886 bytes)  DragList/VB6
 Download       Control List  
Designer: Karl E. Peterson
Tuesday, January 06, 2004


197k (w/demos and help)

VB6 SP0/1/2

VB6 runtime

DragList Demos
DragList Reference

Visual Basic One-Stop Source Shop

DragList, VB5
High Performance Timer Objects, VB6
High Performance Timer Objects, VB5

VB6 Release v1.02.0051
Aug 2, 2000

VB6 Release v1.00.0047
May 22, 1999

VB6 Release v1.00.0045
April 15, 1999

VB6 Release v2.00.0044
April 14, 1999

Every so often, in the pursuit of developing a control, our developers come up with another one to test certain features. The CCRP DragList Control, created by Karl E. Peterson, is such a control, and is now available compiled for use with VB6, as well as the original VB5 SP2/3 version.

CCRP DragList Control

Not a scratch control created with CreateWindowEx, the CCRP DragList Control is a regular Visual Basic Listbox. Along with most of the regular listbox features, the DragList provides additional features like allowing the user to reorder items as needed, to traverse the list with built-in mousewheel support, and to assign the contents of the DragList to a string array, or another list box, or the list's contents to a variant all in one call.

New in this Release

  • Added an AddItemEx method which optionally accepts an ItemData parameter and stores this value in the new listitem's ItemData property.
  • Added a FindItemData method which provides a means to do a quick search of the list to find the first listitem assigned a specified ItemData value.
  • Added a new Demo: Drag102, which shows how to use the new AddItemEx and FindItemData methods.
  • Patched a bug that prevented Click events from firing when a new value was assigned to the ListIndex property.
  • Patched a bug that prevented Click events from firing when keystrokes (arrows, PageUp/PageDown) changed the ListIndex property.
  • Patched a bug that caused the Cancel parameter to the ItemDragBegin event to maintain it's last value between events. It is now always False when the event is fired, and you may set it to True to cancel the drag.
  • Patched a bug that caused the last item in the list to be removed if a user started a drag operation in the area below the last listitem and dropped (released the left mouse button) over an existing item.

Revisions in release 1.00.0047

  • Fixed a ByVal problem on SelectedItem and RemoveItem. Compatibility with projects using build 1.00.0045 should not be affected.


  • ItemHeight property.
  • HorizontalExtent property that can be used to provide a horizontal scrollbar.
  • AutoRedraw: Returns/sets whether the list display will be updated after each Add or Remove.
  • ContainerDraw: Returns/sets whether the drag arrow will be drawn on the control's container (as in the illustration), or appear to overtop the form background.
  • Contents: Returns/sets an array of data into the DragList control. Also accepts reference to another ListBox, and copies the data from that.
  • DragBackColor: Sets the background color of the drag indicator.
  • DragWidth: sets the drag background width
  • CanUndo: Returns whether the last drag operation can be undone.


  • SetTabStops method that supports several different styles
  • FindItem: Used to do a rapid search for the first item beginning with the specified text. Search may begin at any element.
  • Undo: Used to undo the last drag operation performed by the user.

Note: VB6-Compile Help
The methods and properties provided in the Visual Basic 6-compiled version of this control are identical to those found in the VB5 SP2/3 version. Although the file contains a stub .chm help file, its contents are presently under design. We wanted to bring this control to you without the delay in writing the docs.  The VB5 help is included in the VB5 version zip. The VB6 help file will be uploaded at a later date.

VB Common Controls Replacement Project DragList Control
Copyright 1998-2004, Karl E. Peterson, CCRP