The latest version of the ExplorerTreeView control is 1.0.0 RC1, which has been released on June 20th, 2010. ![]()
License
ExplorerListView is free as in free beer. By downloading ExplorerListView you accept the following license:
License for use and distribution ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ExplorerListView Copyright (C) 2005-2010 Timo Kunze This library comes for free. You can redistribute it, but not modify it. If you use this library in your program, it would be nice (but isn't necessary) to mention its author Timo Kunze together with a link to his website http://www.timosoft-software.de in your software's About dialog. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
Downloads
- Installer (2.78 MiB)
Contains the ANSI and Unicode editions of the control, a help file for each edition and some sample projects for Visual Basic 6 and C++/WTL8. - ZIP archive (2.24 MiB)
Contains the ANSI and Unicode editions of the control and a help file for each edition.
See below if you’re looking for older releases. The documentation of ExplorerListView is also available online.
Requirements
The control requires Windows 2000, XP, 2003, Vista, 2008 or 7.
Changelog
The following changes have been made since the release of the previous version:
- Added the IExplorerListView::CaretFooterItem property.
- Added the IExplorerListView::FooterIntroText property.
- Added the IExplorerListView::FooterItems property.
- Added the IExplorerListView::HeaderOLEDragImageStyle property.
- Added the IExplorerListView::IncludeHeaderInTabOrder property.
- Added the IExplorerListView::MinItemRowsVisibleInGroups property.
- Added the IExplorerListView::OLEDragImageStyle property.
- Added the IExplorerListView::SelectedColumnBackColor property.
- Added the IExplorerListView::TileViewSubItemForeColor property.
- Added the IListViewGroup::FirstItem property.
- Added the IListViewGroup::ItemCount property.
- Added the IListViewGroup::Subseted property.
- Added the IListViewGroup::SubsetLinkFocused property.
- Added the IListViewGroup::SubsetLinkText property.
- Added the IListViewItem::GroupIndex property.
- Added the IVirtualListViewGroup::Subseted property.
- Added the IVirtualListViewGroup::SubsetLinkFocused property.
- Added the IVirtualListViewGroup::SubsetLinkText property.
- Added the IExplorerListView::GetFooterRectangle() method.
- Added the IExplorerListView::IsFooterVisible() method.
- Added the IExplorerListView::ShowFooter() method.
- Added the _IExplorerListViewEvents::FooterItemClick event.
- Added the _IExplorerListViewEvents::FreeFooterItemData event.
- Added the _IExplorerListViewEvents::ItemGetGroup event.
- Added the _IExplorerListViewEvents::ItemGetOccurrencesCount event.
- Added the _IExplorerListViewEvents::MapGroupWideToTotalItemIndex event.
- Replaced IListViewItem::Height, IListViewItem::Left, IListViewItem::Top, IListViewItem::Width with IListViewItem::GetRectangle().
- Replaced IListViewSubItem::Height, IListViewSubItem::Left, IListViewSubItem::Top, IListViewSubItem::Width with IListViewSubItem::GetRectangle().
- Extended IListViewItems::Item by the optional parameter ‘groupIndex’.
- Extended IListViewItems::Contains() by the optional parameter ‘groupIndex’.
- Extended IListViewGroup::Add() by the optional parameters ‘virtualItemCount’, ‘subsetLinkText’ and ‘subseted’.
- Extended IExplorerListView::HitTest() by the optional parameters ‘hitGroup’ and ‘hitFooterItem’.
- Extended the _IExplorerListViewEvents::CustomDraw event by the parameter ‘drawAllItems’.
- Extended the DisabledEventsConstants enumeration by ‘deFreeFooterItemData’.
- Extended the ImageListConstants enumeration by ‘ilFooterItems’.
- Changed the type of IExplorerListView::AutoArrangeItems property from Boolean to an enumeration and added the “intelligent” mode where items get auto-arranged only if no item has been positioned manually.
- Changed the type of IExplorerListView::FullRowSelect property from Boolean to an enumeration and added the “extended” mode in which marquee (lasso) item selection is still possible.
- Changed the IListViewItem::TileViewColumns and IVirtualListViewItem::TileViewColumns properties. Both properties don’t work with arrays of column indexes anymore, but with arrays of TILEVIEWSUBITEM structs.
- Changed the TileViewColumns parameters of the _IExplorerListViewEvents::ItemGetDisplayInfo event and the IListViewItems::Add() method. Arrays of TILEVIEWSUBITEM structs are used now.
- Changed the type of item and column texts from VARIANT to BSTR (BSTR is String in Visual Basic 6) to improve performance. When you previously specified ‘Empty’ to make the ItemGetDisplayInfo event raise, you now need vbNullString (NULL for C++).
- Renamed the members of the ArrangementStyleConstants enumeration to fix naming collisions.
- Changed the definitions of the RequestedInfoConstants enumeration to fix naming collisions with ComboListBoxControls.
- Removed the ‘modifierKeys’ parameter of the IExplorerListView::CaretItem property. It wasn’t really working anyway.
- Extended the ListViewItemContainer class, so that it can be used in virtual mode, too. This makes it possible to support Drag’n'Drop in virtual mode.
- Added a new property page that can be used to enter Unicode texts at design time.
- FIX: Clearing the CaretItem property could select all items.
- FIX: Using the CreatedHeaderControlWindow event to insert columns could lead to an infinite loop when the control window was recreated for any reason.
- FIX: The HotItemChanged event was not fired.
- FIX: Overlay images could be drawn too large.
- FIX: The background image could get destroyed when it shouldn’t.
- FIX: The hit-testing flags ‘htGroupStateImage’, ‘htGroupSubSetLink’, ‘htContent’, ‘htFooter’, ‘htGroupHeader’, ‘htGroupFooter’, ‘htGroupExpando’, ‘htGroupBackground’ and ‘htGroup’ were never set.
- FIX: The OptionListView WTL8 sample didn’t work on all systems.
- FIX: If the control was placed on a Form for which the KeyPreview feature was activated, the Form_Key* handler didn’t receive key strokes like Alt+PgDown or Alt+Left, if the control had the keyboard focus.
- FIX: The ‘shift’ parameter that many events have, often missed the ALT key.
- Massively reduced the usage of GDI handles.
- Made some internal changes that will make it easier for me to keep binary compatibility in future.
- It is no longer necessary to subclass the control’s parent window and reflect the WM_CONTEXTMENU message to make the ContextMenu event work.
- Deploy (stripped) symbols with the binaries to make debugging easier. This are the pdb files in case you wonder.
View the full changelog.