What's new in Better ListView 3.14.0
Apr 8, 2015
- Fixed scrolling when all items are unselectable
New in Better ListView 3.13.0 (Dec 2, 2014)
- Fixed drag selections (not all intersecting items were always selected)
- Fixed sub-item focus rectangle display in Details view when FullRowSelect is false
- Fixed sub-item background display in Details view when FullRowSelect is false
- Fixed text highlighting not updating properly after automatic column resizing
New in Better ListView 3.11.0 (Aug 7, 2014)
- Added overlay image alignments support for columns and items in Detail view
- Fixed dragging empty selection when MultiSelect=False and user dragged item with Control key pressed
New in Better ListView 3.10.0 (Jul 7, 2014)
- Added sub-item check boxes and radio buttons support
- Added support for custom disabled check boxes and radio buttons
- Fixed ObjectDisposedException being raised when closing Form right after clicking an item
- Fixed RemoveSearchHighlight to work in item hierarchy
- Fixed drawing of group header when the group is focused by keyboard
New in Better ListView 3.9.1 (May 19, 2014)
- Fixed disappearing items after scrolling and item reordering in LargeIcon view with multi-line items
New in Better ListView 3.9.0 (Apr 25, 2014)
- Added integration with Visual Studio 2013
- Added custom date format support in BetterListViewDateTimePickerEmbeddedControl
- Added ItemReordered event
- Fixed FindItemsWithText method call when working with invisible items
- Fixed saving form after editing tooltips in Windows Forms Designer
New in Better ListView 3.8.3 (Feb 3, 2014)
- Fixed sorting of items with missing sub-items or Key set to null
New in Better ListView 3.8.2 (Oct 28, 2013)
- Fixed pixel precision bug in column selection
- Fixed proper scrolling on combined items using EnsureVisible method
- Fixed drawing item selection on MouseUp in some cases (click directly on text of previously selected item in Details view)
New in Better ListView 3.8.1 (Sep 21, 2013)
- Fixed search highlight in other than Details view
New in Better ListView 3.8.0 (Sep 11, 2013)
- Fixed search highlight on multi-line items
New in Better ListView 3.7.7 (Aug 28, 2013)
- Added HotTracking property
- Added SmoothScroll property
- Improved responsiveness (optimized control refreshing on control state transitions)
- Fixed BetterListViewColumnHeader.DisplayIndex property value not being updated at the time of ColumnHeaderReordered event
- Fixed bug in hit test invalidation optimization causing slower redrawing when mouse moves over large control with many items and columns
New in Better ListView 3.7.6 (Jul 8, 2013)
- Fixed item deselection when clicking on client area
New in Better ListView 3.7.5 (Jun 25, 2013)
- Fixed item selection by clicking on group header
New in Better ListView 3.7.4 (Jun 25, 2013)
- Removed beep when no item is found though single keypress (keyboard search)
- Fixed keyboard search
New in Better ListView 3.7.3 (May 31, 2013)
- Fixed keyboard search with 'Substring' setting and single keystroke
- Fixed rare but possible NullRefereceException in OnMouseUp method
New in Better ListView 3.7.2 (Apr 11, 2013)
- SuspendSelectionChanged renamed to SuppressSelectionChanged
- Fixed selection display when FullRowSelect is false in Details view
- Fixed grid lines display when HeaderStyle is None in Details view
- Fixed closing floating window in Samples Explorer
New in Better ListView 3.7.1 (Mar 29, 2013)
- Fixed Visual Studio Toolbox integration on Windows XP
New in Better ListView 3.7.0 (Mar 19, 2013)
- Added HScrollHeight, VScrollWidth properties
New in Better ListView 3.6.1 (Mar 2, 2013)
- Fixed unnecessary redrawing during MouseMove
New in Better ListView 3.6.0 (Mar 1, 2013)
- Fixed possible exception when invoking context menu on an item by mouse
- Fixed multi-line text when TextTrimming is set to None
- Fixed public constructor parameters being obfuscated
New in Better ListView 3.5.0 (Jan 28, 2013)
- Added owner drawing support for drag selection
- Added data binding customization
- Added separate product activation utility
New in Better ListView 3.4.3 (Jan 19, 2013)
- Added BetterListViewHitTestInfo.MousePosition property
- Fixed unhandled exception on web request timeout when activating over web proxy
New in Better ListView 3.4.2 (Jan 14, 2013)
- Added separate column auto resizing for column header, column content or both (BetterListViewColumnHeaderAutoResizeStyle changed to flags enum)
- Fixed DoubleClick and ItemActivate not raised when the redrawing takes too much time between successive clicks
- Fixed Combined Items
- Fixed check boxes and expand buttons of children in combined items being inactive
- Fixed combined item not being properly measured when its child has been made invisible
- Fixed insertion mark display on combined items
- Fixed online activation from behind a web proxy
- Fixed binding DataTable in the Data Binding sample
- Fixed unnecessary refreshes during binding a table with multiple columns
New in Better ListView 3.4.1 (Dec 21, 2012)
- Added possibility of changing label being edited by setting Label property in BeforeLabelEdit and AfterLabelEditCancel event data
- Improved Visual Studio Toolbox integration for more versions of .NET Framework, including Client Profile
- Fixed possible NullReferenceException during clicking on column headers (negative mouse cursor coordinates probably due to mouse movement)
New in Better ListView 3.4.0 (Dec 14, 2012)
- Added 'Search Highlight' feature
- Added SearchHighlight, SearchHighlightColor, SearchHighlightBorderColor, SearchHighlightTextColor properties
- Added BetterListViewSearchOptions.UpdateSearchHighlight enum value
- Added BetterListViewSubItemBounds.BoundsSearchHighlight property
- Fixed IndexOf() method on collections to return -1 if an element is not contained in the collection
- Fixed case where clickable/sortable/unsortable column is clicked and mouse cursor moves quickly away
- Fixed column auto resizing to account for groups and hierarchical items
- Fixed not allowing to put duplicate references in SelectedItems.Set(IEnumerable) or SelectedItems.AddRange(IEnumerable)
New in Better ListView 3.3.2 (Dec 10, 2012)
- Fixed moving mouse cursor over an item that is partially scrolled out so that the text boundaries have negative top coordinate
- Fixed ItemActivate not raised on slow computers when item is double-clicked and mouse cursor moved quickly away
New in Better ListView 3.3.1 (Dec 6, 2012)
- Added ColumnReorder event next to existing ColumnReordered event to allow cancelling column reordering
- Added keyboard-invoked context menu placements (ContextMenuStripPlacement property)
- Improved context menu placement: Keyboard-invoked context menu is displayed under the first visible selected item
- Improved grid lines appearance
- Improved item parts alignment when expand buttons are present
- Fixed possible improper behavior on slower computers (or lagging code because of too much drawing etc.)
- Fixed item not selected clicked and mouse cursor is immediately moved away
- Fixed drag selection commited when item is almost double-clicked (second mouse button release not done) and then mouse is moved before button is released
- Fixed DoubleClick event raised after any amount of time when item is reordered with incomplete double-click (second mouse button release not done) and then other item is clicked
New in Better ListView 3.3.0 (Dec 3, 2012)
- Added FIPS-compliance (improved security and compatibility)
- Improved horizontal multi-line text alignment
- Improved Samples Explorer
- Properties VisibleColumns, VisibleGroups, VisibleItems hidden from Properties window in the WinForms Designer
- Fixed commencing mouse drag selecting on double-click and mouse move in quick succession
- Fixed scrolling to parent item vertically when only child item have been selected
- Fixed AutoResizeColumns updating just the last column
- Fixed column header sort glyph placement when the column is sorted and no items are present in the list
- Fixed image border color not changing when ImageBorderColor layout property changed
New in Better ListView 3.2.2 (Oct 9, 2012)
- Added support for TypeConverters when adding custom objects to collections
- Improved horizontal scrolling on items within item hierarchy
- Fixed reordering item in an empty or collapsed group
New in Better ListView 3.2.1 (Sep 18, 2012)
- Allowed setting Font property to null on column headers, groups, items and sub-items
- Fixed cycling between items during keyboard search
- Fixed code generation for SearchSettings property
- Fixed NullReferenceException when edited sub-item is switched during label editing
- Fixed multi-line text wrapping when BetterListViewItem.CheckBoxAppearance is set to None
- Fixed sorted column background being drawn in other than Details view
- Fixed unsufficient vertical scroll bar maximum when column headers are added in first initialization between BeginUpdate()/EndUpdate()
- Fixed double-click on column containing hidden check box
New in Better ListView 3.2.0 (Aug 28, 2012)
- Added HeaderStyle property
- Added BetterListViewColumnHeaderStyle.None enum value (indicates that column header is not displayed, but corresponding sub-items are)
- Added BetterListViewColumnHeaderStyle.Hidden enum value (indicates that column header is hidden, including sub-items)
- Improved mouse and keyboard selections to behave more like Windows Explorer
- Merged BetterListViewColumnHeaderStyle.Hidden enum value and BetterListViewColumnHeader.Value
- Control+Shift modifier keys behave the same way as Control modifier key alone in Multi-column Sorting
- Hidden ShowItemExpandButtons property in Express edition
- Fixed possible multiselection using Control+click when MultiSelect is false
New in Better ListView 3.1.1 (Aug 8, 2012)
- Fixed selected child items not removed from SelectedItems collection after BetterListView.Items.Clear() call
- Fixed designer not supporting some BetterListViewColumnHeaderStyle enum values well
New in Better ListView 3.1.0 (Aug 4, 2012)
- Changes:
- Added BetterListViewDropPart.On
- Added BetterListViewLabelEditCancelEventArgs, BetterListViewLabelEditCancelEventHandler for BeforeLabelEdit, AfterLabelEditCancel events
- Added OnDrawInsertionMark method, DrawInsertionMark event
- Added BetterListViewInsertionLocation.Offset property
- Added CollapsedItemUnselection property (child item unselection behaviors when parent item is collapsed)
- Added CheckBoxesAlign property to make parent items without check boxes more distinguishable in hierarchy
- Added BetterListViewLabelEditActivation.ClickThrough label editing option
- BetterListViewCheckItemReorderEventArgs now inherits from DragEventArgs to provide more information relevant to Drag and Drop
- Added BetterListViewCheckItemReorderEventArgs.InvalidationReasons property to allow working with different reasons for item reorder invalidation
- Added BetterListViewColumnHeaderStyle.Unsortable enum value
- Added BetterListViewHitTestInfo.ColumnArea enum value
- Added unsorting individual columns using Control modifier key when multi-column sorting is active
- Improved performance of hierarchical items
- When parent item is collapsed and any of its children selected, the parent itself gets selected
- Changed EnsureVisible(BetterListViewItemCollection) to EnsureVisible(ICollection); this avoids unnecessary wrapping of collections
- A new BufferedGraphicsContext is created instead of using BufferedGraphicsManager.Current to avoid possible clash with other 3rd party controls using double-buffering in the same context
- GetItemAt, GetSubItemAt, GetColumnHeaderAt, GetGroupAt methods can be called even when the control is in updation state (though the fresh information is not ensured) - for example, this enables using GetDropInfo method inside ItemReorder event handler
- Removed CancelEdit from AfterLabelEdit event data, AfterLabelEditCancel should be used instead
- Fixed changing selection from user code within ItemDrop event handler
- Fixed BetterListViewItemReorderEventArgs.Locations can contain wrong values and missing child item indices
- Fixed sorting items with hierarchy when some item contains more child items than there are top-level items
- Fixed begining label editing when a single item is deselected using mouse and Control modifier key is pressed
- Fixed updating last selected element when selection is changed programmatically
- Fixed flickering when scrolling by moving selection using arrow keys
- Fixed measurement of items not resetting when expand button is displayed by adding child items
- Fixed not allowing to reorder item after last child item, but on higher level
- Fixed BetterListViewItemEnumerator
- Fixed items not positioned properly when ShowDefaultGroupHeader property value is changed
- BREAKING CHANGES:
- UnselectCollapsedItems property renamed to CollapsedItemUnselection
New in Better ListView 3.0.0 (Jul 10, 2012)
- Added support for Client Profile versions of .NET Framework
- Added accessibility support
- Added AccessibleObject implementations
- Added protected virtual methods DoDefaultAction(BetterListViewColumnHeader) and DoDefaultAction(BetterListViewItem)
- Added CircularSelection property
- Added BetterListViewItem.CheckBoxAppearance property
- Added BetterListViewItem.CustomDropDisplayExternal, BetterListViewItem.CustomDropDisplayInternal properties
- Added BetterListViewSubItem.DisplayIndex property
- Added BetterListViewDragDropEffectSettingEventArgs.UpdateInsertionMark property
- Added custom item/sub-item text formatting
- Added BetterListView.FormatItem
- Added BetterListViewSubItem.FormatText property
- Added BetterListViewSubItem.DisplayText property
- Added BetterListViewItem.DisplayText
- Added BetterListViewItem.FormatText property
- Added BetterListViewItem.OnFormat
- Added BetterListViewItem.RefreshDisplayText
- Added VisibleColumns, VisibleGroups, VisibleItems properties
- Added BetterListViewColumnHeader.NextVisibleColumnHeader, BetterListViewColumnHeader.PreviousVisibleColumnHeader properties
- Added check on setting IsValid to true in CheckItemReorder event handler
- Added automatic sorting of item hierarchy
- Added BetterListViewItem.AllowSortChildItems property to customize hierarchical sorting
- Added detecting source of item check state change
- Added BetterListViewCheckedItemsChangedEventArgs.CheckStateChangeMode
- Added BetterListViewItemCheckEventArgs.CheckStateChangeMode
- Added BetterListViewItemCheckedEventArgs.CheckStateChangeMode
- Improved detecting clicking on empty space in multi-line text
- Improved display of check box in cut state
- Improved serialization and ToString methods using invariant culture whenever appropriate
- Improved BetterListViewNaturalItemComparer to handle arbitrarily large numbers
- When AutoResizeColumn is called between BeginUpdate() and EndUpdate(), the resizing is postponed until the EndUpdate() call
- Changed type of ImageSize layout property
- Renamed BetterListViewLayoutItems.ImageSizes property to BetterListViewLayoutItems.SubItemImageSizes
- Removed 'sealed' modifier from BetterListViewSubItem class to allow inheritance
- Removed restoring selection when ItemReorderMode is set to Custom
- Fixed moving selection on group headers using left/right arrow keys in List view
- Fixed BetterListViewItem.CustomHeight property not taken into account in EqualsContent and Clone methods
- Fixed BetterListViewSubItemCollection
- Fixed custom collection always containing a single sub-item when created
- Fixed cloning
- Fixed unselecting item when clicked outside items and MultiSelect = false
- Fixed selecting items ranging from and item to nearest group header above it
- Fixed serialization of an empty list
- Fixed display of right-aligned text when image is displayed after the text (columns, groups, items/sub-items)
- Fixed display of group header splitter line when the text is centered or right-aligned
- Fixed display of item selection in Details view when FullRowSelect is set to false
- Fixed cloning of BetterListViewItem.CheckState property
- Fixed first sub-item image disappearing when sub-item ImageKey property is set to null
- Fixed measurement of default group header
- BREAKING CHANGES :
- Replaced BetterListViewItem.ShowCheckBox by BetterListViewItem.CheckBoxAppearance
- Replaced BetterListViewItem.AllowDropHighlight by BetterListViewItem.CustomDropDisplayExternal and BetterListViewItem.CustomDropDisplayInternal
- Changed type of ImageSize layout property
- Renamed BetterListViewLayoutItems.ImageSizes property to BetterListViewLayoutItems.SubItemImageSizes
New in Better ListView 2.9.1 (May 3, 2012)
- Added GetDropInfo method
- Fixed some Drag and Drop flaws
New in Better ListView 2.9.0 (Apr 20, 2012)
- Added AlignHorizontalImage, AlignVerticalImage properties in BetterListViewItem, BetterListViewSubItem and BetterListViewColumnHeader
- Added HeaderAlignmentHorizontalImage, HeaderAlignmentVerticalImage in BetterListViewGroup
- Added GetDropInfo method to determine drop/insertion location during Drag and Drop from user code
- Enabled group focusing by right mouse button
- Improved text clipping
- Fixed EqualsContent and CopyTo methods of Better ListView element classes (missing AlignVertical/HeaderAlignmentVertical property)
- Fixed vertical image alignment in Tile view
- Fixed display of vertically centered text in LargeIcon and Thumbnail view
- Fixed NullReferenceException when InsertionMark with empty insertion location is set
New in Better ListView 2.8.0 (Apr 10, 2012)
- Fixed problem when windows theme is changed to Aero in run-time
- Fixed keeping state of the control when focus is lost
- Fixed rasing SelectedItemsChanged even when drag selection ended by losing focus or mouse capture change
- Fixed horizontal scroll bar having SmallChange value too small when no items are visible (only groups)
- Fixed column headers not refreshing properly on custom scrolling in updating mode
- Fixed auto scrolling triggered during drag selecting when owner form has been minimized
New in Better ListView 2.7.5 (Apr 4, 2012)
- Added automatic removal of items from the list when removed from a group
- Fixed BetterListViewItem.IsExpanded always 'true' in cloned items
- Fixed improper alignment of items when a new item with children is added to flat list
- Fixed combined item not showing combined selection when added during control initialization
New in Better ListView 2.7.4 (Mar 29, 2012)
- Fixed refreshing scrolled item when BetterListViewItem.Image property is changed
New in Better ListView 2.7.3 (Mar 27, 2012)
- Fixed item redrawing when selection is changed
- Fixed label editing in SmallIcon and List view
New in Better ListView 2.7.2 (Mar 23, 2012)
- Fixed BetterListViewItem.Bounds and BetterListViewItem.GetBounds() returning null
New in Better ListView 2.7.1 (Mar 22, 2012)
- Removed unnecessary redrawing in mouse events (caused by EnsureVisible)
- Fixed optimized redrawing in some cases when focus is changed
New in Better ListView 2.7.0 (Mar 21, 2012)
- Added BetterListViewItem.CustomHeight property
- Added MaximumToolTipTextLength property
- Removed unnecessary spacing for expand buttons when ShowItemExpandButtons is set to false
- Optimized redrawing when changing item focus or selection
- Fixed possible ItemActivate after drag selection or vice verse
- Fixed text wrap when the text contains ampersand symbols
- Fixed activation through web proxy
- Workaround for .NET performance issuewhen displaying automatic tooltips with very long text
New in Better ListView 2.6.0 (Mar 14, 2012)
- Added support for ElementOuterPadding layout property in Details view
- Changed BetterListViewFocusedItemChangedEventArgs properties FocusedSubItemOld, FocusedSubItemNew to FocusedColumnIndexOld, FocusedColumnIndexNew to avoid referencing a non-existing sub-item (when the last sub-item is focused and removed)
- Resolved some issues caused by obfuscation
New in Better ListView 2.5.8 (Mar 1, 2012)
- Enabled Better ListView to be used from C++/CLI (resolved obfuscation issues)
New in Better ListView 2.5.7 (Feb 27, 2012)
- Fixed problem when setting ImageKey to data-bound items
New in Better ListView 2.5.6 (Feb 22, 2012)
- Improved automatic tooltips for Details view with columns
- Fixed column not resizing when double-clicked on the resizing area
- Fixed control not refreshing properly when Enabled property is changed on parent control
- Fixed nested RefreshView call causing column headers to break in some cases
- Fixed scrolling about 1 pixel after label editing (vertically scrolled) last item in Details view
- Fixed possible NullReferenceException when clicking on item check box
- Fixed group font problem when 'Segoe UI Regular' font is not installed
New in Better ListView 2.5.5 (Feb 8, 2012)
- Fixed updating control while having zero dimensions
- Fixed ItemActivate not raised when MultiSelect is false
New in Better ListView 2.5.4 (Feb 6, 2012)
- Added BetterListViewLabelEditActivation.Immediate
- Added sample for BetterListViewItem.Visible property
- Standard label editing can be invoked by clicking outside of text area
- Single-click labele editing can be invoked by clicking on item/sub-item text even if the item is not selected
- Fixed Invalidate method of BetterListViewColumnHeader, BetterListViewItem, BetterListViewGroup
- Fixed default button of the Form pressing after text label editing
- Fixed group headers not updating when MinimumSize property of the group layout changed
- Fixed possible entering inconsistent state when the control has zero dimensions
New in Better ListView 2.5.3 (Feb 4, 2012)
- Fixed problem when all items in a group set invisible (BetterListViewItem.Visible set to false)
- Fixed problem when sub-items of an item are clear while some sub-item is focused
New in Better ListView 2.5.2 (Feb 3, 2012)
- Added BetterListViewItem.Visible property
- Added ToString(bool) method in some collection classes to allow printing out list of individual items
- More detailed information returned in ToString methods of Better ListView elements
- Improved group header font fallback
- HitTest returns BetterListViewHitTestInfo.Empty when the control is updating
- When ContextMenuStrip is available, it can be used instead of ContextMenuStripItems
- BufferedGraphicsContext for control double-buffering is obtained from BufferedGraphicsManager instead of creating new
- Fixed changing component names in Visual Studio Component Designer (column headers, items, sub-items and groups)
- Fixed calling EnsureVisible when the control is updating (scrolling postponed util EndUpdate is called)
- Fixed selected item kept in SelectedItems collection when replaced using indexer (e.g. BetterListView.Items[1] = newItem)
- Fixed problem when clicking on column header and quickly moving mouse pointer outside client area
- Fixed return value of BetterListViewAddress.ToString
- Fixed Document Outline window blinking in Windows Forms Designer when BetterListViewItem is selected and Properties window opened at the same time
- Fixed group header text disappearing when changed in runtime
- Fixed group image not always updating when is of same size and set in runtime
- Fixed Dispose method when Array is bound to Better ListView
- Fixed ForeColorGroups property serializing to designer code even when having default value
- Fixed background image aligned to bottom/right side being shown under scroll bars
New in Better ListView 2.5.1 (Jan 20, 2012)
- Extended background of combined items (both parent and child items)
- Fixed link in documentation (chapter "Hit Test")
New in Better ListView 2.5.0 (Jan 19, 2012)
- Added ShowDefaultGroupHeader property
- Added GroupHeaderBehavior property
- Added BetterListViewItem.AllowSelectChildItems property
- Added BetterListViewItem.Selectable property
- Added BetterListViewItem.SelectableItem property
- Added BetterListViewItem.LastAvailableChildItem property
- Added BetterListViewSearchOptions.SelectableItemsOnly to allow searching through selectable items only
- Displayable and selectable item is recognized with hit test (the two can be different because of BetterListViewItem.AllowSelectChildItems)
- When AutoSizeImages is true (the default) in item layouts corresponding to Details view, the space for image is made only when the item actually has an image
- Default font of the group does not get unnecessarily serialized to designer generated code
- Removed unused property ShowFocusRectangle
- Fixed possibly obtaining default group instance through BottomGroup or TopGroup properties
- Fixed FindItemsWithText method accepting wrong type of item index
- Fixed content not scrolling horizontally in List view
- Fixed not keeping focused sub-item in same column after Page Down, Home and End (Details view)
- Fixed group font not creating when 'Segoe UI' is not installed (font fallback is used to 'Trebuchet MS' or to default font of the control)
- Breaking Changes:
- Item property of BetterListViewHitTestInfo split to ItemDisplay and ItemSelection
New in Better ListView 2.4.3 (Jan 14, 2012)
- Changes:
- Added LabelEditDefaultAccept property
- Added EndEdit method
- Fixed horizontal scrolling
- Breaking Changes:
- When label edit is cancelled by the control (e.g. by losing focus), the default action is not accepting the edited data - this can be set by LabelEditDefaultAccept property to false
New in Better ListView 2.4.2 (Jan 5, 2012)
- Fixed vertical scroll bar not showing up
- Fixed accessing disposed back buffer Graphics object after removing control from designer surface
- Fixed links to Index in Better ListView Express Documentation
- Fixed project file of Visual Basic samples for Express edition
New in Better ListView 2.4.1 (Dec 30, 2011)
- Faster initialization when BeginUpdate/EndUpdate not used and the control does not have parent / is invisible
- Fixed scrolling horizontally when columns exceed width of client area in other views than Details
New in Better ListView 2.4.0 (Dec 28, 2011)
- Changes:
- Added FocusedItemChanged event
- Added Center layout property to allow change of item centering in Thumbnails and LargeIcon views
- Added hotkey prefix display support
- Every column have its own resizing style (BetterListViewColumnHeader.SmoothResize)
- When a group is clicked, only the group header is scrolled into view (not the entire group)
- Improved performance of multi-line items
- Fixed rendering multiline text with custom newlines
- Fixed group item enumerator
- Breaking Changes:
- BetterListView.SmoothColumnResize property moved to BetterListViewColumnHeader.SmoothResize
New in Better ListView 2.3.2 (Nov 29, 2011)
- Added support for newline characters in text (multi-line text)
- Added BetterListViewSubItemBounds.BoundsImageFrame
- Extended BetterListViewItemComparer
- CheckItemReorder event is raised even when ItemReorderMode is set to Enabled (not only Custom)
- Columns, items and groups get automatically removed from Better ListView when the control is disposed
- Optimized changing images in runtime
- Extended documentation (Multi-line Items, Selecting and Checking Items, Sorting Items)
- Fixed IsAnythingSelected property
- Fixed SelectedIndices collection not containing updated indices after sorting items
- Fixed possible problem when sub-item is replaced by the user in IBetterListViewEmbeddedControl.SetData method during label edit operation
- Breaking Changes:
- Renamed BetterListViewItemActivateItemActivationSource to BetterListViewItemActivationSource
- For owner drawing in empty image area of custom size, use BetterListViewSubItemBounds.BoundsImageFrameBounds instead of BetterListViewSubItemBounds.BoundsImage
New in Better ListView 2.3.1 (Nov 17, 2011)
- Added HideSelectionMode property
- Fixed sub-item with TextWrapping.Space wrapping text to more lines than specified by MaximumTextLines layout property
New in Better ListView 2.3.0 (Nov 16, 2011)
- Added BetterListViewItem.TextWrapping (BetterListViewSubItem.TextWrapping) property
- Added vertical text alignment for columns, items, sub-items and groups
- Added BetterListViewDrawItemEventArgs.DrawEnabled and BetterListViewDrawItemEventArgs.DrawFocused properties
- Added comparation operators to BetterListViewAddress
- When items are selected from user code, new selections with Shift or Control+Shift keys are made from the item with lowest index (address) value
- Sub-item text aligned on top in Details view
- Revised and extended documentation
- Fixed item text not displaying properly on items in Thumbnails view
- Fixed item images not refreshing when another ImageList is set with same image sizes
- Fixed problem when modifying tree hierarchy in runtime
- Breaking Changes:
- BetterListViewColumnHeader.Align renamed to BetterListViewColumnHeader.AlignHorizontal
- BetterListViewGroup.HeaderAlignment renamed to BetterListViewGroup.HeaderAlignmentHorizontal
- BetterListViewItem.Align renamed to BetterListViewItem.AlignHorizontal
- BetterListViewSubItem.Align renamed to BetterListViewSubItem.AlignHorizontal
- TextAlignment changed to TextAlignmentHorizontal
New in Better ListView 2.2.0 (Nov 10, 2011)
- DefaultTextAlignment, DefaultTextTrimming layout properties made editable
- Expand button is hidden on empty groups
- Revised Better ListView Documentation
- Fixed ArgumentOutOfRange exception when hierarchical items are re-measured in specific order
- Fixed displaying images when using ImageList
- Fixed adding columns and items in design-time
- Fixed selections with Control-Shift pressed
- Fixed problem when collapsing group emptied by item reordering
- Fixed problem when reordering columns when there is a bound data source
- Minor fixes in Samples Explorer
- Breaking Changes:
- LayoutOptions property has been replaced by layout propery AutoSizeImages (e.g. LayoutItemsCurrent.AutoSizeImages)
New in Better ListView 2.1.3 (Nov 10, 2011)
- Fixed item not refreshing after sub-items added/removed
- Fixed item not refreshing after child items added/removed
New in Better ListView 2.1.2 (Nov 10, 2011)
- Fixed ordering of items in SelectedItems collection when child items are selected
- Fixed extra space in column headers when images are displayed just in some of the column headers
New in Better ListView 2.1.1 (Nov 10, 2011)
- Improved natural item comparer to support longer numbers
- Fixed adding item to end of the list when reordering items into different group
- Fixed items not updating when column is auto-resized or data source changed
- Fixed blank space for image not appearing on custom image layout
New in Better ListView 2.1.0 (Nov 10, 2011)
- Added 'static' column resizing option
- Added optional automatic item resizing in Details view when columns are not visible
- Added special collections for selected items and indices
- Added special collections for checked item indices
- Added SelectedItemsChanged event
- Added methods FindNearestItem and BetterListViewItem.FindNearestItem
- Added automatic insertion of items into Better ListView, when added to group or group into Better ListView
- Added new C# and Visual Basic samples
- Added 'EqualsContent' method for 'by value' comparison of elements and collections
- Optimized performance of expand/collapse operations on items and groups
- Optimized performance of modifying item collection
- ItemSelectionChanged event is raised per-item as in the .NET ListView
- Date/time format set to Short by default in DateTimePicker embedded control
- BetterListViewView enum made compatible with System.Windows.Forms.View
- Revised and corrected XML documentation
- Corrected access modifier of InnerList property of collections from public to private
- Default column width increased to 128 pixels (was 60 pixels)
- Fixed column header backround display when vertical scroll bar is visible
- Fixed group header display when column headers are wider than client area and horizontally scrolling
- Fixed possible initialization of sub-item, column or group with null text
- Fixed BetterListViewItem.Selected setter
- Fixed BetterListViewItemIndexComparer taking item hierarchy into account
- Fixed BetterListViewItem.Level getter
- Fixed making selection with Shift+arrow after items have been removed from the list
- Fixed editing sub-item collection in Windows Forms Designer
- Fixed not sorting when ItemComparer is set and sorting is suspended
- Fixed property ColorInsertionMark not having effect on insertion mark color
- Extended documentation:
- Added Quick Start Tutorial
- Added C# and Visual Basic sample source code
- Added 'Quick Start' chapter
- Extended 'Performance' chapter
- Breaking Changes:
- Behavior of ItemSelectionChanged event has been adjusted according to original .NET ListView
- Removed setter of CheckedIndices, CheckedItems, SelectedIndices and SelectedItems
- BetterListItem constructor with parameters (string, string) have different meaning, use (string[]) instead
- BetterListViewColumnHeader constructor with paramter (int) refers to ImageIndex property, not Width property
- Property IsSelected of BetterListViewItem renamed to Selected
- Value comparisons of implementations of Equals and IEquatable.Equals moved to 'EqualsContent' method
New in Better ListView 2.0.3.2 (Nov 10, 2011)
- Fixed re-installation of betterlistview.dll in GAC
New in Better ListView 2.03 (Aug 18, 2011)
- Added item/sub-item image border drawing option
- Added customizable image border color
- Images in Thumbnails view centered vertically
- Fixed refreshing control when Font property set
- Fixed measurement of fonts with overhang glyphs (italics)
New in Better ListView 2.02 (Aug 17, 2011)
- Supports hierarchical items (tree)
- Always uses current system theme. Looks great with Aero.
- Flicker free and double-buffered
- Enhanced image support (each sub-item can have an image, automatic intelligent resizing, and more)
- Improved drag & drop support and behavior
- Improved checkboxes (usable in all view modes, three-state checkboxes support, better behavior)
- Improved selections behavior (mimics Windows Explorer)
- Auto-scroll while reordering items and column headers
- Multi-column sorting
- Improved column headers (eg. they can be used in all layouts)
- Context menu for column headers
- Column header images supported
- Added automatic tooltips for items with too long text
- Complex data-binding support added
- All elements can be owner-drawn
- Rich ListView event data
- Customizable searching by typing