Initial: static site migrated from S3

This commit is contained in:
Jarvis Prime
2026-03-23 16:10:59 +00:00
commit ca8d059a9f
275 changed files with 55854 additions and 0 deletions

580
better-listview/\".html Normal file
View File

@@ -0,0 +1,580 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<!-- Google Tag Manager -->
<script>(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-TMSFLB4');</script>
<!-- End Google Tag Manager -->
<script>
function gainit()
{
ga('create', 'UA-16362539-4', 'auto');
console.log('ga init');
}
window.onload=gainit;
</script>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="better listview, list view, listview, list view control, list view component, .net list view, list view replacement, list view alternative, improved list view, enhanced list view" />
<meta name="description" content="Better ListView is an alternative List View control - the ideal replacement for the regular .NET listview component. For WinForms C#/VB.net." />
<meta name="author" content="ComponentOwl" />
<meta http-equiv="Title" content="Better ListView for .NET (C#, VB) - Alternative list view component" />
<meta name="copyright" content="(c) 2010-2018 ComponentOwl" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>Better ListView for .NET (C#, VB) - Alternative list view component</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="comics.rss" />
<link href="stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<!-- Google Tag Manager (noscript) -->
<noscript><iframe src="https://www.googletagmanager.com/ns.html?id=GTM-TMSFLB4"
height="0" width="0" style="display:none;visibility:hidden"></iframe></noscript>
<!-- End Google Tag Manager (noscript) -->
<div class="d-page">
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="support.html" class="menu-item">Support</a></li>
<li class=""><a href="articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="index.html" class="logoimg"><img alt="Component Owl" src="images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<input id="tabs-initial-index" name="tabs-initial-index" type="hidden" value="-1" />
<ul id="nav" class="nav">
<li><a href="better-listview.html" class="current">Overview</a></li>
<li><a href="better-listview/screenshots.html" class="">Screenshots</a></li>
<li><a href="better-listview/comparison-table.html" class="">Comparison</a></li>
<li><a href="better-listview/resources.html" class="">Resources</a></li>
<li><a href="better-listview/story.html" class="">Story</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail"><div class="features-page">
<ul class="common">
<li>Better ListView is a <strong>list view control for .NET Windows Forms</strong></li>
<li>Designed as a replacement for the regular .NET list view control.</li>
<li>Compatible with: Visual Studio 2015, 2013, 2012, 2010, 2008, 2005, with full designer support.</li>
<li>For C#, Visual Basic .NET (VB.NET), managed C++, and other CLI languages.</li>
<li>Compatible with .NET 4.5, .NET 4, .NET 3.5, .NET 3, .NET 2, and newer. Supports .NET Client Profile.</li>
<li>Runs on Windows 10, 8, 7, Vista, 2003, XP, 2000, and newer, both 32-bit and 64-bit.</li>
<li>Better ListView has <strong>more features and flexibility</strong>, always uses the <strong>current system theme</strong> (including <strong>Aero</strong> support), and <strong>removes limitations</strong> of the regular .NET list view control.</li>
<li><strong>Minimum learning needed</strong>. Better ListView can be used just like the regular list view.</li>
<li>Written in <strong>pure managed C# code</strong>. It is fast, <strong>light-weight</strong> and optimized for 10k+ items.</li>
<li>Easy royalty-free deployment. Single DLL file that has just 250kB when compressed.</li>
<li>The assembly is <strong><a href="http://www.nist.gov/itl/fipsinfo.cfm" target="_blank">FIPS-compliant</a></strong>, CLS-compliant, <strong>digitally signed</strong> and strongly named.</li>
<li>Tested in the real world by thousands of users</li>
</ul>
<div class="image"><img alt="Better ListView control" src="http://assets.componentowl.com/images/7/Overview Collage_original_1367470843.png?1367445643" /></div>
<h2>Extra features summary</h2>
Better ListView is fast and flicker-free, supports hierarchical items, has improved grouping, better drag &amp; drop and item reordering support, better column headers, inbuilt sorting, multi-column sorting, better images support, context menus for column headers and items, embedded controls for editing support, automatic and custom sizing of items and images, thumbnails view, richer event data, item text formatting, XML and binary serialization, data-binding, owner-drawing options, better tooltips, powerful hit-test, improved usability, easy saving/loading of contents into file or string, multi-line items, and more.
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
Component Owl created <b>the one and only tool I dont want to be without when it comes to software developing in Visual Studio</b>. Also, Ive been working as software user/developer for the last 26 years, and <b>I have never before experienced a support that really goes the needed extra mile to make things work</b>, like the guys at Component Owl do.
</em></blockquote><strong>Göran Alfvén, Sweden</strong></div></div>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
The control is <b>very easy and intuitive to use and is well documented</b>.
</em></blockquote><strong>DevProConnections.com Review</strong></div></div>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
Better List View is <b>awesome</b>.
</em></blockquote><strong>Daniel N</strong></div></div>
<h3>Hierarchical items</h3>
You can create tree-like structures in Better ListView; inbuilt drag &amp; drop hierarchical reordering of items.
<h3>Improved grouping</h3>
Better grouping customizable group headers look and behavior, collapsible, image support, context menu support, focusable, etc. Each group header can be customized individually.
<h3>Save/load contents with 1 line of code</h3>
You can save or load the contents of Better ListView in just 1 line of code, either to file or string. Both XML and binary serialization is supported.
<h3>Double-buffered and flicker free</h3>
Simply put, Better ListView is smooth. Regular listview requires multiple anti-flicker techniques, but you do not have to worry about that with Better ListView. Better ListView is optimized for 100k+ items.
<h3>Column header images</h3>
You can use images in column headers. Custom image sizes are supported.
<div class="image"><img alt="Column Header Images" src="http://assets.componentowl.com/images/8/Column Header Images_original_1298620501.png?1298595301" /></div>
<h3>Sub-item images</h3>
You can set images to list view sub-items. Regular list view allows you to set only one image per list view item, but Better ListView can show image for every sub-item (in every column).
<h3>Image-List and Image Support</h3>
Better ListView supports both image list, or individual image objects (System.Drawing.Image). Regular list view forces you to use ImageList object.
<h3>Custom list view Image size</h3>
You can use any image size in the list view. Better ListView can also automatically resize images with preserving aspect ratio.
<h3>Drag &amp; drop with insertion mark</h3>
Highly customizable drag-drop for both internal and external drag-drop. You can use drop highlight or insertion mark drag drop modes.
<div class="image"><img alt="List View Item Reordering Mark Preview" src="http://assets.componentowl.com/images/21/List View Item Reordering Mark Preview_original_1298631798.png?1298606598" /></div>
<h3>List view item reordering</h3>
Better ListView has inbuilt item reordering and item drag &amp; drop inserting at the position specified by user. Drag &amp; drop preview is shown using an insertion mark.
<h3>Column-header reordering</h3>
Better ListView has inbuilt easy drag &amp; drop column header reordering that is much easier to use than in the regular list view. Insertion mark is shown, auto-scrolling is supported.
<div class="image"><img alt="Column Header Reordering With Insertion Mark" src="http://assets.componentowl.com/images/9/Column Header Reordering With Insertion Mark_original_1298621331.png?1298596131" /></div>
<h3>Auto-scroll for column header reordering and item reordering</h3>
Better ListView has inbuilt auto-scrolling for column header and item reordering.
<h3>Column headers can be shown in all views</h3>
Better ListView can display column headers in all views - Details, SmallIcons, LargeIcons, List, Tile, Thumbnails. This allows users to sort items in all views. Additionally, you can also hide the column headers even in the details view.
<div class="image"><img alt="Column Headers in LargeIcons View" src="http://assets.componentowl.com/images/10/Column Headers In LargeIcons View_original_1298622038.png?1298596838" /></div>
<h3>Thumbnails view mode</h3>
Better ListView supports additional "thumbnails" view mode that allows you to view images of large sizes. The images are automatically and smoothly resized with preserved aspect ratio. You can define the maximum/minimum desired image sizes.
<h3>Image shadows, borders and padding</h3>
All images in Better ListView can have border or shadow specified. You can also specify padding that gives you space for owner drawing (eg. overlay images). This can be used in all views.
Image shadows like in Windows 7 theme are supported. Windows Explorer uses very similar shadows for image thumbnails.
<div class="image"><img alt="ListView Image Shadows and Image Borders" src="http://assets.componentowl.com/images/11/ListView Image Shadows and Image Borders_original_1298622678.png?1298597478" /></div>
<h3>Multi-column sorting</h3>
You can sort by multiple columns in Better ListView. Simply shift+click a secondary (or third, etc) column to add it to the current sort. Zero code needed. Additionally, the background of the primary (first) sort column can be highlighted.
<div class="image"><img alt="Multi Column Sort in List View" src="http://assets.componentowl.com/images/12/Multi Column Sort in List View_original_1298623013.png?1298597813" /></div>
<h3>Inbuilt sorting and natural sorting</h3>
Better ListView has inbuilt list view sorting that works out of the box. You no longer need to implement your own item comparer. If custom comparer is needed, you can inherit from the Better ListView comparer to save time.
<h3>Richer event data</h3>
Many events have richer event data that allow you to do extra operations or tell you extra useful information. The richer events include: AfterItemSort, BeforeDrag, BeforeItemSort, ColumnClick (allows you to cancel sort), DragDropException, DrawBackground, DrawColumnHeaderBackground, DrawColumnHeader, DrawItemBackground, DrawItem, HitTestChanged, ItemActivate (event data tells you how the item got activated - mouse, keyboard or code), ItemDrag, ItemDrop, ItemReorder, ItemSearch, LabelEdit, RequestEmebeddedControl.
<h3>Checkboxes in all views</h3>
You can have checkboxes in LargeIcons view, SmallIcons view, List view, Thumbnails view and of course also in the Details view.
<div class="image"><img alt="Checkboxes In LargeIcons View" src="http://assets.componentowl.com/images/13/Checkboxes In LargeIcons View_original_1298623385.png?1298598185" /></div>
<h3>Three state checkboxes</h3>
Three state checkboxes are supported in Better ListView:
<div class="image"><img alt="Three-State Checkboxes in List View" src="http://assets.componentowl.com/images/14/Three State Checkboxes in List View_original_1298624577.png?1298599377" /></div>
<h3>Hide or show checkboxes of specific ListView Items</h3>
You can hide checkbox for any ListViewItem. You can also show checkboxes only for specified items. All list items in Better ListView have "AllowShowCheckBox" property.
<div class="image"><img alt="Show or hide checkboxes for specific listview items" src="http://assets.componentowl.com/images/23/show-or-hide-checkboxes-for-specific-listview-items_original_1299748307.png?1299723107" title="Show or hide checkboxes for specific listview items" /></div>
<h3>Powerful list view tooltips</h3>
You can display tooltips for nearly any part of Better ListView - tooltips for items, sub-items, checkboxes, item images, sub-item images, column headers, column header images, column header borders, and even for custom areas (regions). Owner-drawn tooltips are supported.
<div class="image"><img alt="List View Regional Tooltips and Owner Drawn Tooltips" src="http://assets.componentowl.com/images/15/List View Tooltips Region And Owner Drawn Tooltips_original_1298632357.png?1298607157" /></div>
<h3>Uses current Windows theme</h3>
Instead of implementing custom, un-native look and feel, Better ListView always automatically fully uses the current system theme. It supports Aero as well. Better ListView always looks great and feels right to the user.
<h3>XML and binary serialization of everything</h3>
Every part of Better ListView (items, sub-items, column headers) can be both binary and XML serialized. You can easily XML serialize whole list view (or binary serialize) to save it to file or transfer items between controls. Standard ways of .NET serialization can be used (BinaryFormatter, XmlSerializer).
<h3>Owner drawing</h3>
Better ListView allows you to draw over the client area, items and column headers. Contrary to .NET ListView, owner drawing is fully operational even when the system uses Aero theme. You can draw separately to background and foreground parts of Better ListView without worrying about proper drawing order. Owner drawing events provide rich data, including exact item state and areas of every item part.
<div class="image"><img alt="List View Owner Drawing Background Gradient" src="http://assets.componentowl.com/images/22/List View Owner Drawing Background Gradient_original_1298633053.png?1298607853" /></div>
<h3>Multi-line items</h3>
Better ListView supports multi-line items. Items with very long text can be displayed on multiple lines. Highly customizable and powerful: Focused items can have custom number of lines; hard line breaks supported as well. Foreground overlay "watermark" images are easily achievable using owner-drawing.
<div class="image"><img src="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312133213" alt="Multi-line items"></div>
<h3>Background image support</h3>
Display background image in Better ListView easily using the BackgroundImage property. Many layouts (stretch, tile, none), alignments (top, bottom, left, right, center and combinations) are supported, as well as customizable opacity.
<div class="image"><img alt="ListView Background Image" src="http://assets.componentowl.com/images/27/Background-Images_original_1326106027.png?1326080827" title="ListView Background Image" /></div>
<h3>Context menu for column headers, list items, and empty area</h3>
Better ListView supports 3 types of context menus: Column header context menu, list view items context menu, and empty area context menu (when right-clicking white space).
<div class="image"><img alt="Column Header Context Menu in List View" src="http://assets.componentowl.com/images/17/Column Header Context Menu in List View_original_1298721855.png?1298696655" /></div>
<h3>Advanced hit-test with detailed information</h3>
The hit test in Better ListView returns very detailed information. It tells you not only the location (Client Area, Sub-Item, Sub-Item Text, Sub-Item Image, Checkbox, Column Header Image, and many more), but it also tells you the state of the item, and part of the item (left or right).
<div class="image"><img alt="Advanced Hit-Test With Detailed Information" src="http://assets.componentowl.com/images/26/Advanced-Hit-Test_original_1326105831.png?1326080631" title="Advanced Hit-Test With Detailed Information" /></div>
<h3>Customizable search-by-typing</h3>
Better ListView has excellent customization functionality for find-as-you-type item searching. The search modes include: Prefix (searchs from beginning of items), Substring (search any part of item text), Prefix + Substring, or Disabled. Additionally, search options include: Case sensitive, search first word only, play sound when item not found, prefer prefixes, search whole words. You can also restrict the search to only certain columns. You can also call "FindItemsWithText" function to find items from code.
<h3>Display text when the list view is empty</h3>
You can display a gray text centered in the list view if it's empty to hint or educate users. This will make your software more user friendly.
<div class="image"><img alt="Show Text When List View is Empty" src="http://assets.componentowl.com/images/18/Show Text When List View is Empty_original_1298629916.png?1298604716" /></div>
<h3>Embed controls for item editing</h3>
Inbuilt in-line editing support includes label edit, combobox edit, date picker edit. You can also embed any custom control for in-line editing. Sub-item editing is supported. Highly customizable.
<div class="image"><img alt="Custom Embedded Control in List View for Editing" src="http://assets.componentowl.com/images/19/Custom Embedded Control in List View for Editing_original_1298630263.png?1298605063" /></div>
<h3>ListView item text formatting</h3>
Supports both text trimming and auto-ellipsis for text that's too long. You can choose from: TrimCharacter, TrimWord, EllipsisCharacter, EllipsisWord, EllipsisPath (for file paths). Column header text can be broken into multiple lines.
<h3>Focusable ListView sub-items and groups</h3>
Focus sub-items or groups in Better ListView easily with keyboard. Just use the arrow keys. (This is impossible with the regular .NET ListView)
<div class="image"><img alt="Focusable sub-items in Better ListView" src="http://assets.componentowl.com/images/25/focus-list-view-sub-items_original_1313674098.png?1313648898" title="Focusable sub-items in Better ListView" /></div>
<h3>Automatic list view layout</h3>
Better ListView can auto-size item images, item text, column header images, column header text.
<h3>Custom list view item size</h3>
You can set custom sizes for item text area and item images. You can also set custom size for column header text area and column header images. (Text area size is different from font size, text area size basically defines the size of the list view item.) This enables you to make tiny/huge column headers or list view items.
<div class="image"><img alt="Custom Item Size in List View" src="http://assets.componentowl.com/images/20/Custom Item Size in List View_original_1298630739.png?1298605539" /></div>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
It's an odd thing when you're inspired by a form component, but Component Owl
with their Better ListView has done it. Love its native feel.
</em></blockquote><strong>Daniel N, USA</strong></div></div>
<h2>More advantages of our improved list view component:</h2>
<ul class="common">
<li><strong>Developer friendly</strong>: All classes and properties are as similar to the regular list view as possible. Everything is intuitive, very little learning is needed. You can use Better ListView immediately. <strong>Save time and ship sooner</strong>.</li>
<li><strong>Better ListView has improved usability and fixed behavior</strong>. All Windows users are familiar with the list view used in Windows Explorer. Better ListView mimicks behavior and look &amp; feel of the Windows Explorer list view as much as possible to leverage the existing user knowledge. <strong>Using Better ListView is pleasant for users.</strong> Many other list view components implement custom look and behavior and can oftentimes downright frustrate users (many controls don't even support mouse-wheel scrolling!) This doesn't happen with Better ListView.</li>
<li><strong>Guaranteed support and continued development</strong>: Better ListView is developed as a joint-venture of two software companies that use Better ListView in their main products (popular <strong><a href="http://www.dextronet.com/swift-to-do-list-software" target="_blank">Swift To-Do List</a></strong> and <strong><a href="http://www.imagingshop.com" target="_blank">ImagingShop</a></strong>). These applications are used by thousands of users daily. This is your guarantee that Better ListView will be supported and developed in the future.</li>
<li><strong>Tested in real world applications by thousands of users</strong>: Because Better ListView is used in professional consumer desktop software applications - Swift To-Do List and ImagingShop, thousands of users work with Better ListView every day. Although we use unit tests that cover most of code, and do thorough inhouse testing, this is your true guarantee that it is tested thoroughly in the real world. It is <strong>extremely stable</strong>.</li>
<li>Better ListView does <strong>not</strong> inherit from the regular .NET list view. It is written in pure managed C# code and is flexible, light weight, and fast. Extensions of the regular .net list view only go so far. Better ListView goes further. Soure code licenses are also available for ultimate customization.</li>
</ul>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
In addition to creating a new List View control to incorporate <b>broader flexibility and functionality</b>, Better ListView could also be called <b>Fixed ListView</b>, as it corrects a number of annoying problems with the standard List View that Microsoft delivers to Visual Studio customers.
</em></blockquote><strong>DevProConnections.com Review</strong></div></div>
</div></div>
</div>
<div class="left">
<div class="buttons-box">
<a onclick="ga('send', 'event', 'trial', 'click');" data-sumome-listbuilder-id="4016d967-e098-487d-a20e-da328d2345df" class="standard-download image-link">Download Free Trial - With sample projects</a>
<a href="pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
<p>Version 3.15 / May 27, 2015</p>
</div>
<div class="compatibility">
<p><strong>Seamless integration with .NET 2.0 and higher</strong></p>
<div class="documentation">
<p><a href="better-listview/quick-start-guide.html" onclick="window.open(this.href); return false">See Quick Start Guide</a></p>
<p><a href="better-listview/documentation.html" onclick="window.open(this.href); return false">See Documentation</a></p>
<p><a href="better-listview/class-reference.html" onclick="window.open(this.href); return false">See Class Reference</a></p>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/15/blv-overview_original_1326499754.png?1326474554" class="screenshot" title="Better ListView control"><img alt="Better ListView" src="http://assets.componentowl.com/screenshots/15/blv-overview_thumb_1326499754.png?1326474554" /></a></p>
</div>
<div class="newsletter">
<form action="http://www.componentowl.com/subscriptions" class="new_subscription" id="new_subscription_product" method="post" onsubmit="if (!validate_newsletter_form(this)) return false; jQuery.ajax({data:jQuery.param(jQuery(this).serializeArray()) + '&amp;authenticity_token=' + encodeURIComponent('dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM='), dataType:'script', type:'post', url:'/subscriptions'}); return false;"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM=" /></div> <input id="subscription_subscription_location_id" name="subscription[subscription_location_id]" type="hidden" value="512994065" />
<input id="form_id" name="form_id" type="hidden" value="#new_subscription_product" />
<strong>Receive product updates<br />and news via email:</strong>
<div><input class="email inline-label" id="product-newsletter-email" name="subscription[email]" size="30" type="text" value="Your Email" /></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><input name="subscription[subscription_list_ids][]" type="hidden" value="970100327" />
<input name="subscription[subscription_list_ids][]" type="hidden" value="1009842129" /></div>
<span class="dbtn-c subscribe dbtn-small" id="send"><span class="dbtn-w"><input class="dbtn" name="commit" type="submit" value="Subscribe" /></span></span>
</form></div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/16/thumbnails_original_1312133021.png?1312107821" class="screenshot" title="Image thumbnails in groups"><img alt="Thumbnails" src="http://assets.componentowl.com/screenshots/16/thumbnails_thumb_1312133021.png?1312107821" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312108013" class="screenshot" title="Items with multi-line text"><img alt="Multi-line Items" src="http://assets.componentowl.com/screenshots/21/multi-line-items_thumb_1312133213.png?1312108013" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_original_1313676477.png?1313651277" class="screenshot" title="Items organized in a tree-like hierarchy"><img alt="Item Hierarchy" src="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_thumb_1313676477.png?1313651277" /></a></p>
</div>
<div class="small-button-ct">
<a href="better-listview/screenshots.html" class="small-button"><span>More Screenshots</span></a>
</div>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<a onclick="ga('send', 'event', 'trial', 'click');" data-sumome-listbuilder-id="4016d967-e098-487d-a20e-da328d2345df" class="standard-download image-link">Download Free Trial - With sample projects</a>
<a href="pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<a href="betterlistview.exe" class="small-download image-link" onclick="download_email('better-listview');">Free Download</a>
<a href="pricing-licensing/better-listview.html" class="small-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
</div>
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><a href="blog.html">Latest From Our Blog</a></h3>
<h4><a href="blog/index.html%3Fp=927.html">Activation issues and how to solve them</a></h4>
<div class="post-info">Wednesday, 01 March 2017</div>
<h4><a href="blog/index.html%3Fp=921.html">The Three Main Advantages Better ListView has Over the Classic .NET Framework</a></h4>
<div class="post-info">Thursday, 09 February 2017</div>
<h4><a href="blog/index.html%3Fp=914.html">BLV and Internet Explorer</a></h4>
<div class="post-info">Sunday, 13 November 2016</div>
<h4><a href="blog/index.html%3Fp=906.html">Centering Images in Better ListView Sub-items</a></h4>
<div class="post-info">Wednesday, 06 August 2014</div>
<h4><a href="blog/index.html%3Fp=901.html">Sub-item Check Boxes in Better ListView</a></h4>
<div class="post-info">Sunday, 06 July 2014</div>
</div>
<div class="other-posts"><a href="blog.html">See more posts &raquo;</a></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><a href="feeds.rss" class="rss">Subscribe to our RSS</a></li>
<li><a href="http://twitter.com/ComponentOwl" class="twitter">Follow us on twitter</a></li>
</ul>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView Express 3.15 released!</h4>
<p>
<a href="betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView 3.15 released!</h4>
<p>
<a href="betterlistview.exe" onclick="download_email('better-listview');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better SplitButton 3.15 released!</h4>
<p>
<a href="bettersplitbutton.exe" onclick="download_email('better-splitbutton');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better Thumbnail Browser 3.15 released!</h4>
<p>
<a href="betterthumbnailbrowser.exe" onclick="download_email('better-thumbnail-browser');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item last-item">
<div class="date">08<span>Apr</span></div>
<div class="message">
<h4>Better ListView Express 3.14.0 released!</h4>
<p>
<a href="better-listview-express/releases%3Fsince=3.14.0.html">See what's new</a>
or
<a href="betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><div class="social"><a href="support.html" class="feedback">Contact Us (Feedback)</a> <span>|</span> <a href="feeds.rss" class="rss">RSS</a> <span>|</span> <a href="https://twitter.com/ComponentOwl" class="twitter">Twitter</a> <span>|</span> <a href="sitemap.html" class="sitemap">Sitemap</a> <span>|</span> Our <a href="index.html" class="stdl">task management software</a> that uses Better ListView</div>
Copyright &copy; 2021 ComponentOwl.com, All rights reserved. Read our <a href="eula.html">EULA</a>, <a href="disclaimer.html">Disclaimer</a> and <a href="privacy-policy.html">Privacy Policy</a>.<br /></div>
</div>
</div>
</div>
<script src="javascripts/app_packaged.js%3F1455269826" type="text/javascript"></script>
<script async>(function(s,u,m,o,j,v){j=u.createElement(m);v=u.getElementsByTagName(m)[0];j.async=1;j.src=o;j.dataset.sumoSiteId='854b5e00f297990012cc230023375a00787c0000216621002775a800d79ad500';v.parentNode.insertBefore(j,v)})(window,document,'script','//load.sumo.com/');</script>
</body>
</html>

View File

@@ -0,0 +1,21 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN">
<html>
<head>
<meta name="Robots" content="noindex">
<title>Better ListView Class Reference</title>
<script language="JavaScript">
// ensure this page is not loaded inside another frame
if (top.location != self.location)
{
top.location = self.location;
}
</script>
</head>
<frameset cols="250,*" framespacing="6" bordercolor="#6699CC">
<frame name="contents" src="../class-reference/better-listview/contents.html" frameborder="0" scrolling="no">
<frame name="main" src="../class-reference/better-listview/~ComponentOwl.BetterListView.html" frameborder="1">
<noframes>
<p>This page requires frames, but your browser does not support them.</p>
</noframes>
</frameset>
</html>

View File

@@ -0,0 +1,550 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="list view, listview, list view control, list view component, .net list view, list view replacement, list view alternative, improved list view, enhanced list view" />
<meta name="description" content="Better ListView by Component Owl is a .NET WinForms control designed to replace the standard list view control included with C#/VB.net." />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)" />
<meta name="copyright" content="(c) 2010-2018 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="../feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="../comics.rss" />
<link href="../stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="d-page">
<script type="text/javascript">
//<![CDATA[
var t = {"antispam":"capek-rulz","purchase_email":"valid purchase email","valid_email":"a valid email","thanks_for_why_uninstall":"Thank you very much for your feedback!","thank_you":"Thank you!","current_email":"valid current email","thanks_for_subscription":"<div class=\"sent-saved-notice\">Thank You for your subscription!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","message":"message","required":"required","download_in_progress":"Your download should be in progress...","your_full_name":"your full name","order_thanks_for_message":"<div class=\"sent-saved-notice\">Thank you very much for your message!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","thanks_for_message":"Thank you very much for your message!<br /><a href="http://www.componentowl.com/better-listview/\&quot;#\"" onclick=\"send_another(); return false;\">Send Another Message</a>"}
//]]>
</script>
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="../index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="../better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="../better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="../better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="../better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="../better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="../pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="../pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="../pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="../pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="../support.html" class="menu-item">Support</a></li>
<li class=""><a href="../articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="../blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="../comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="../about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="../index.html" class="logoimg"><img alt="Component Owl" src="../images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<input id="tabs-initial-index" name="tabs-initial-index" type="hidden" value="-1" />
<ul id="nav" class="nav">
<li><a href="../better-listview.html" class="">Overview</a></li>
<li><a href="screenshots.html" class="">Screenshots</a></li>
<li><a href="comparison-table.html" class="current">Comparison</a></li>
<li><a href="resources.html" class="">Resources</a></li>
<li><a href="story.html" class="">Story</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail">The tables below explain the main differences between <strong>regular .NET list view</strong> and <strong>Better ListView</strong>. However, it would be a mistake to look on Better ListView just as an improved or fixed listview - it can do so much more. The <strong><a href="../better-listview.html">Overview</a></strong> and our <strong><a href="../blog/tag/better-listview-2/index.html">blog</a></strong> highlights many of these extra features and possibilities.
<h2>Better behavior and fixed issues:</h2>
<table cellspacing="0" class="comparison-pair">
<tr>
<th>Regular .NET ListView Control</th>
<th>Better ListView control</th>
</tr>
<tr>
<td>Some events fire twice bug</td>
<td>Fixed</td>
</tr>
<tr>
<td>Selection behavior different from Windows Explorer</td>
<td>Fixed; Behaves as expected</td>
</tr>
<tr>
<td>Drag &amp; Drop behavior different from Windows Explorer</td>
<td>Fixed; Behaves as expected</td>
</tr>
<tr>
<td>Checkboxes do not stay in the first column when the first column is reordered</td>
<td>Fixed; Behaves as expected</td>
</tr>
<tr>
<td>Non-standard checkboxes behavior (e.g. when using spacebar)</td>
<td>Fixed</td>
</tr>
<tr>
<td>Non-standard look, incompatible with system themes</td>
<td>Fixed; Always uses system theme. Looks great on all Windows versions. Works with Windows 7 themes and Aero</td>
</tr>
</table>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
In addition to creating a new List View control to incorporate <b>broader flexibility and functionality</b>, Better ListView could also be called <b>Fixed ListView</b>, as it corrects a number of annoying problems with the standard List View that Microsoft delivers to Visual Studio customers.
</em></blockquote><strong>DevProConnections.com Review</strong></div></div>
<h2>Removed limitations:</h2>
<table cellspacing="0" class="comparison-pair">
<tr>
<th>Regular .NET ListView Control</th>
<th>Better ListView control</th>
</tr>
<tr>
<td>Just one image per item</td>
<td>Enhanced; Each sub-item can have image</td>
</tr>
<tr>
<td>No group header customization</td>
<td>Added, each group header is fully customizable</td>
</tr>
<tr>
<td>ImageList must be used to display images</td>
<td>Both ImageList and Image instances can be used</td>
</tr>
<tr>
<td>Simple sorting only</td>
<td>Multi-column sorting; Users can use Shift+Click to add additional columns to the sort</td>
</tr>
<tr>
<td>Three-state checkboxes not supported</td>
<td>Support for both two-state and three-state check boxes</td>
</tr>
<tr>
<td>Very limited event data</td>
<td>Enhanced; Many events have rich event data with useful information</td>
</tr>
<tr>
<td>Only 1 context menu for whole ListView</td>
<td>Up to 3 separate context menus: One for column headers, one for items, and one for empty area</td>
</tr>
<tr>
<td>Columns can be shown only in &ldquo;Details&rdquo; layout</td>
<td>Columns can be shown in all layouts</td>
</tr>
<tr>
<td>Only &ldquo;SmallIcon&rdquo; and &ldquo;LargeIcon&rdquo; size supported</td>
<td>Images can be of any size</td>
</tr>
<tr>
<td>Image size is static</td>
<td>Images are scaled and centered smoothly when necessary while keeping their respective aspect ratios</td>
</tr>
<tr>
<td>Column header images are not supported</td>
<td>Both ImageList and custom Image instances can be set for column headers</td>
</tr>
<tr>
<td>Custom comparer for sorting has to be implemented from scratch</td>
<td>Custom comparer can be inherited from BetterListView&rsquo;s default comparer to extend its functionality; Any custom IComparer is supported as well</td>
</tr>
<tr>
<td>Sub-item images very limited; Usable only via WinAPI with limitations in size and color depth</td>
<td>Images for sub-item fully supported (both ImageList and custom Image instances)</td>
</tr>
<tr>
<td>Check boxes do not have animation effect like the standard control</td>
<td>Check boxes are animated when used with mouse or keyboard the same way as the CheckBox control</td>
</tr>
<tr>
<td>Searching with keyboard only on first column and limited to string prefixes</td>
<td>Keyboard searching can be used on columns of choice and the searching behavior can be further adjusted (any substring, character-based or word-based search)</td>
</tr>
<tr>
<td>Only simple item tooltips supported</td>
<td>Automatic and customizable tooltips on items, sub-items and columns are supported</td>
</tr>
<tr>
<td>Can scroll to just one item</td>
<td>One or several items can be specified to be scrolled into view</td>
</tr>
<tr>
<td>Vista-look only with WinAPI extension</td>
<td>Visual elements are used by default</td>
</tr>
<tr>
<td>No Drag &amp; Drop item highlighting</td>
<td>Items under cursor are properly highlighted during dragging; Highlighting can be switched off for selected items</td>
</tr>
</table>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
The control is <b>very easy and intuitive to use and is well documented</b>.
</em></blockquote><strong>DevProConnections.com Review</strong></div></div>
<h2>Other extra features:</h2>
<table cellspacing="0" class="comparison-pair">
<tr>
<th>Regular .NET ListView Control</th>
<th>Better ListView control</th>
</tr>
<tr>
<td>No thumbnails view</td>
<td>Added support; can be used for viewing thumbnails of photos or other images</td>
</tr>
<tr>
<td>No inbuilt saving/loading</td>
<td>Added support; save/load contents to file or string (XML or binary)</td>
</tr>
<tr>
<td>No item hierarchy</td>
<td>Added support; tree-like hierarchical items supported</td>
</tr>
<tr>
<td>No image shadows or borders</td>
<td>Added support; you can use image shadows or borders, supports custom image padding (eg. useful when owner-drawing overlay icons)</td>
</tr>
<tr>
<td>No empty text support (watermark text when ListView is empty)</td>
<td>Added support; Empty text for empty ListView is supported; You can give hint to your users now</td>
</tr>
<tr>
<td>No inbuilt sort</td>
<td>Added inbuilt sort support; Zero-code sorting</td>
</tr>
<tr>
<td>No auto-scroll when reordering items</td>
<td>Added; Auto-scroll speed can be adjusted</td>
</tr>
<tr>
<td>No auto-scroll when reordering columns</td>
<td>Added; Auto-scroll speed can be adjusted</td>
</tr>
<tr>
<td>No inbuilt item/column reordering</td>
<td>Added item/column reordering support; Zero-code reordering</td>
</tr>
<tr>
<td>No auto-scroll when dragging an item</td>
<td>Added; Auto-scroll speed can be adjusted</td>
</tr>
</table>
<div class="testimonial-intext"><div class="testimonial-wrap"><blockquote><em>
The enhancements I found most useful for my own projects were the automatic layout, context menus, improved drag and drop, item searching, and sorting options. Thanks to both the source codeincluded demos, the online documentation, and the obvious property names of the control's "better" features, <b>I was able to put the component to use faster than it took me to install the setup package.</b>
</em></blockquote><strong>DevProConnections.com Review</strong></div></div></div>
</div>
<div class="left">
<div class="buttons-box">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
<p>Version 3.15 / May 27, 2015</p>
</div>
<div class="compatibility">
<p><strong>Seamless integration with .NET 2.0 and higher</strong></p>
<div class="documentation">
<p><a href="quick-start-guide.html" onclick="window.open(this.href); return false">See Quick Start Guide</a></p>
<p><a href="documentation.html" onclick="window.open(this.href); return false">See Documentation</a></p>
<p><a href="class-reference.html" onclick="window.open(this.href); return false">See Class Reference</a></p>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/15/blv-overview_original_1326499754.png?1326474554" class="screenshot" title="Better ListView control"><img alt="Better ListView" src="http://assets.componentowl.com/screenshots/15/blv-overview_thumb_1326499754.png?1326474554" /></a></p>
</div>
<div class="newsletter">
<form action="http://www.componentowl.com/subscriptions" class="new_subscription" id="new_subscription_product" method="post" onsubmit="if (!validate_newsletter_form(this)) return false; jQuery.ajax({data:jQuery.param(jQuery(this).serializeArray()) + '&amp;authenticity_token=' + encodeURIComponent('dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM='), dataType:'script', type:'post', url:'/subscriptions'}); return false;"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM=" /></div> <input id="subscription_subscription_location_id" name="subscription[subscription_location_id]" type="hidden" value="512994065" />
<input id="form_id" name="form_id" type="hidden" value="#new_subscription_product" />
<strong>Receive product updates<br />and news via email:</strong>
<div><input class="email inline-label" id="product-newsletter-email" name="subscription[email]" size="30" type="text" value="Your Email" /></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><input name="subscription[subscription_list_ids][]" type="hidden" value="970100327" />
<input name="subscription[subscription_list_ids][]" type="hidden" value="1009842129" /></div>
<span class="dbtn-c subscribe dbtn-small" id="send"><span class="dbtn-w"><input class="dbtn" name="commit" type="submit" value="Subscribe" /></span></span>
</form></div>
<div class="sharethis-ct">
<strong>Share this page if you like it:</strong>
<div class="sharethis">
<script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=db6a9d0e-5d07-4036-8bed-4959941491f3&amp;type=website&amp;post_services=email%2Cfacebook%2Ctwitter%2Cgbuzz%2Cmyspace%2Cdigg%2Csms%2Cwindows_live%2Cdelicious%2Cstumbleupon%2Creddit%2Cgoogle_bmarks%2Clinkedin%2Cbebo%2Cybuzz%2Cblogger%2Cyahoo_bmarks%2Cmixx%2Ctechnorati%2Cfriendfeed%2Cpropeller%2Cwordpress%2Cnewsvine"></script>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/16/thumbnails_original_1312133021.png?1312107821" class="screenshot" title="Image thumbnails in groups"><img alt="Thumbnails" src="http://assets.componentowl.com/screenshots/16/thumbnails_thumb_1312133021.png?1312107821" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312108013" class="screenshot" title="Items with multi-line text"><img alt="Multi-line Items" src="http://assets.componentowl.com/screenshots/21/multi-line-items_thumb_1312133213.png?1312108013" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_original_1313676477.png?1313651277" class="screenshot" title="Items organized in a tree-like hierarchy"><img alt="Item Hierarchy" src="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_thumb_1313676477.png?1313651277" /></a></p>
</div>
<div class="small-button-ct">
<a href="screenshots.html" class="small-button"><span>More Screenshots</span></a>
</div>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<a href="../betterlistview.exe" class="small-download image-link" onclick="download_email('better-listview');">Free Download</a>
<a href="../pricing-licensing/better-listview.html" class="small-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
</div>
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><a href="../blog.html">Latest From Our Blog</a></h3>
<h4><a href="../blog/index.html%3Fp=927.html">Activation issues and how to solve them</a></h4>
<div class="post-info">Wednesday, 01 March 2017</div>
<h4><a href="../blog/index.html%3Fp=921.html">The Three Main Advantages Better ListView has Over the Classic .NET Framework</a></h4>
<div class="post-info">Thursday, 09 February 2017</div>
<h4><a href="../blog/index.html%3Fp=914.html">BLV and Internet Explorer</a></h4>
<div class="post-info">Sunday, 13 November 2016</div>
<h4><a href="../blog/index.html%3Fp=906.html">Centering Images in Better ListView Sub-items</a></h4>
<div class="post-info">Wednesday, 06 August 2014</div>
<h4><a href="../blog/index.html%3Fp=901.html">Sub-item Check Boxes in Better ListView</a></h4>
<div class="post-info">Sunday, 06 July 2014</div>
</div>
<div class="other-posts"><a href="../blog.html">See more posts &raquo;</a></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><a href="../feeds.rss" class="rss">Subscribe to our RSS</a></li>
<li><a href="http://twitter.com/ComponentOwl" class="twitter">Follow us on twitter</a></li>
</ul>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView Express 3.15 released!</h4>
<p>
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView 3.15 released!</h4>
<p>
<a href="../betterlistview.exe" onclick="download_email('better-listview');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better SplitButton 3.15 released!</h4>
<p>
<a href="../bettersplitbutton.exe" onclick="download_email('better-splitbutton');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better Thumbnail Browser 3.15 released!</h4>
<p>
<a href="../betterthumbnailbrowser.exe" onclick="download_email('better-thumbnail-browser');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item last-item">
<div class="date">08<span>Apr</span></div>
<div class="message">
<h4>Better ListView Express 3.14.0 released!</h4>
<p>
<a href="../better-listview-express/releases%3Fsince=3.14.0.html">See what's new</a>
or
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><div class="social"><a href="../support.html" class="feedback">Contact Us (Feedback)</a> <span>|</span> <a href="../feeds.rss" class="rss">RSS</a> <span>|</span> <a href="http://twitter.com/ComponentOwl" class="twitter">Twitter</a> <span>|</span> <a href="../sitemap.html" class="sitemap">Sitemap</a> <span>|</span> Our <a href="../index.html" class="stdl">task management software</a> that uses Better ListView</div>
Copyright &copy; 2018 ComponentOwl.com, Dextronet.com. All rights reserved. Read our <a href="../eula.html">EULA</a>, <a href="../disclaimer.html">Disclaimer</a> and <a href="../privacy-policy.html">Privacy Policy</a>.<br /></div>
</div>
</div>
</div>
<script src="../javascripts/app_packaged.js%3F1455269826" type="text/javascript"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-16362539-4']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script src="http://load.sumome.com/" data-sumo-site-id="854b5e00f297990012cc230023375a00787c0000216621002775a800d79ad500" async="async"></script>
<!-- Place this tag after the last plusone tag -->
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
</body>
</html>

View File

@@ -0,0 +1,227 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta content="cs" http-equiv="Content-Language">
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>Better ListView Documentation</title>
<link href="../documentation/better-listview/data/style.css" rel="stylesheet" type="text/css">
<link href="../documentation/better-listview/resources/main.css" media="screen" rel="stylesheet" type="text/css">
</head>
<body class="index"><div class="placing">
<h1>
<strong>Better ListView Documentation
</strong>
</h1>
<div class="banner">
<a href="../better-listview.html"><img src="../documentation/better-listview/resources/overview.gif" alt="Better ListView" class="ss"></a>
<div class="inside">
<div class="text">Better ListView: Ultimate .NET ListView replacement control for WinForms (C#, VB.NET)</div>
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><a href="../betterlistview.exe" class="dbtn">Download</a></span></span>
<span class="dbtn-c"><span class="dbtn-w"><a href="../better-listview.html" class="dbtn">More Info</a></span></span>
</div>
</div>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-introduction.html">
<strong>Introduction, Comparison</strong>
</a>
<br><span class="toc-description">What this documentation covers; brief comparison to regular .NET
ListView</span>
</p>
<p class="toc-entry">
<a href="quick-start-guide.html">
<strong>Quick Start</strong>
</a>
<br><span class="toc-description">Step-by-step tutorial for using Better ListView in your
application</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-background-image.html">
<strong>Background Image</strong>
</a>
<br><span class="toc-description">Image on the control background, setting its layout and
opacity</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-checkboxes.html">
<strong>Check Boxes</strong>
</a>
<br><span class="toc-description">Enabling two and three state check boxes on items</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-collections.html">
<strong>Collections</strong>
</a>
<br><span class="toc-description">Working with collections of columns, items, sub-items,
groups</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-columns.html">
<strong>Columns</strong>
</a>
<br><span class="toc-description">Hiding, resizing and reordering column headers</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-context-menus.html">
<strong>Context Menus</strong>
</a>
<br><span class="toc-description">Displaying context menus on the control, column headers, groups
and items</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-data.html">
<strong>Data Binding</strong>
</a>
<br><span class="toc-description">Complex binding of custom list-based data to the
control</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-drag-drop.html">
<strong>Drag and Drop</strong>
</a>
<br><span class="toc-description">Setting-up Drag and Drop functionality and effects</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-embedded-controls.html">
<strong>Embedded Controls</strong>
</a>
<br><span class="toc-description">Custom item and sub-item editing controls</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-empty-text.html">
<strong>Empty Text</strong>
</a>
<br><span class="toc-description">Displaying customized text on empty list</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-focus.html">
<strong>Focusing Elements</strong>
</a>
<br><span class="toc-description">How items, sub-items and groups can be focused and how to detect
focus changes</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-groups.html">
<strong>Groups</strong>
</a>
<br><span class="toc-description">Working with item groups</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-hit-test.html">
<strong>Hit Test</strong>
</a>
<br><span class="toc-description">Getting info for cursor position in the control</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-insertion-mark.html">
<strong>Insertion Mark</strong>
</a>
<br><span class="toc-description">Specifying insertion mark location and apperance</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-item-hierarchy.html">
<strong>Item Hierarchy</strong>
</a>
<br><span class="toc-description">Setting-up tree-like item hierarchy (parent and child items), item
indentation</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-item-reorder.html">
<strong>Item Reordering</strong>
</a>
<br><span class="toc-description">Changing item order automatically with Drag and Drop</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-items.html">
<strong>Items</strong>
</a>
<br><span class="toc-description">Working with ListView items</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-label-edit.html">
<strong>Label Editing</strong>
</a>
<br><span class="toc-description">Inline editing of items and sub-items</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-layout.html">
<strong>Layout Properties</strong>
</a>
<br><span class="toc-description">Element and element part sizes and padding, multi-line text, image
border</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-multi-line.html">
<strong>Multi-line Items</strong>
</a>
<br><span class="toc-description">Setting up items with multiple lines of text</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-owner-draw.html">
<strong>Owner Drawing</strong>
</a>
<br><span class="toc-description">Custom drawing over the control and its parts</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-performance.html">
<strong>Performance</strong>
</a>
<br><span class="toc-description">Understanding Better ListView performance settings</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-save-load.html">
<strong>Saving and Loading ListView Content</strong>
</a>
<br><span class="toc-description">Storing and retrieving items and groups in binary or XML
format</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-search.html">
<strong>Searching Items</strong>
</a>
<br><span class="toc-description">Item searching by typing or programmatically</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-serialization.html">
<strong>Serialization</strong>
</a>
<br><span class="toc-description">Overview of Better ListView serialization capabilities</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-sort.html">
<strong>Sorting Items</strong>
</a>
<br><span class="toc-description">Ordering items with multiple columns and custom
comparers</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-sub-items.html">
<strong>Sub-items</strong>
</a>
<br><span class="toc-description">Working with sub-items which are attached under items</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-text-formatting.html">
<strong>Text Formatting</strong>
</a>
<br><span class="toc-description">Text alignment and trimming</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-tooltips.html">
<strong>Tooltips</strong>
</a>
<br><span class="toc-description">Displaying customized tooltips on control and its parts</span>
</p>
<p class="toc-entry">
<a href="../documentation/better-listview/data/chapter-views.html">
<strong>Views</strong>
</a>
<br><span class="toc-description">Ways of displaying items, detecting view change</span>
</p>
<table cellpadding="0" class="footer"><tr>
<td style="width: 50%">Better ListView Documentation</td>
<td style="width: 50%; text-align: right;">
Copyright © 2010-2012  <a href="../index.html" target="_blank">ComponentOwl.com</a>
</td>
</tr></table>
</div></body>
</html>

View File

@@ -0,0 +1,437 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:xlink="http://www.w3.org/1999/xlink">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type">
<title>Quick Start</title>
<link href="../documentation/better-listview/data/style.css" rel="stylesheet" type="text/css">
<link href="../documentation/better-listview/data/prettify.css" type="text/css" rel="stylesheet">
<script type="text/javascript" src="../documentation/better-listview/data/prettify.js"></script><script type="text/javascript" src="../documentation/better-listview/data/lang-vb.js"></script><link href="../documentation/better-listview/resources/main.css" media="screen" rel="stylesheet" type="text/css">
</head>
<body onload="prettyPrint()"><div class="placing">
<br><table class="navigation"><tr>
<td class="navigation-previous"><a href="../documentation/better-listview/data/chapter-introduction.html"><strong>
« Introduction, Comparison</strong></a></td>
<td class="navigation-index"><a href="../quick-start-guide/better-listview/index.html"><strong>Index</strong></a></td>
<td class="navigation-next"><a href="../documentation/better-listview/data/chapter-background-image.html"><strong>Background Image »
</strong></a></td>
</tr></table>
<br><h1>Quick Start</h1>
<div class="banner">
<a href="../better-listview.html"><img src="../documentation/better-listview/resources/overview.gif" alt="Better ListView" class="ss"></a>
<div class="inside">
<div class="text">Better ListView: Ultimate .NET ListView replacement control for WinForms (C#, VB.NET)</div>
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><a href="../betterlistview.exe" class="dbtn">Download</a></span></span>
<span class="dbtn-c"><span class="dbtn-w"><a href="../better-listview.html" class="dbtn">More Info</a></span></span>
</div>
</div>
<h2>Table of Contents</h2>
<p class="toc-entry"><a href="quick-start-guide.html#prerequisites">Tutorial Prerequisites</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#tutorial">Step-by-step tutorial</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#troubleshooting">Installation
Troubleshooting</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#activation-online">Online
Activation</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#activation-offline">Offline
Activation</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#migrating">Migrating from .NET ListView</a></p>
<p class="toc-entry"><a href="quick-start-guide.html#support">Learning Resources and Getting
Support</a></p>
<h2>
<a name="prerequisites" id="prerequisites"></a>Tutorial Prerequisites</h2>
<ul>
<li>
<p>Visual Studio 2012 / 2010 / 2008 / 2005</p>
</li>
<li>
<p>.NET Framework 4.5 / 4.0 / 3.5 / 3.0 / 2.0 (<strong><em>Compact
Framework is not supported</em></strong>)</p>
</li>
<li>
<p>Visual C# or Visual Basic</p>
</li>
</ul>
<h2>
<a name="tutorial" id="tutorial"></a>Step-by-step Tutorial</h2>
<p>Start with a new "<strong><em>Windows Forms Application</em></strong>"
project. A designer with empty Form appears. Display the
<strong><em>Toolbox</em></strong> window (<strong><em>View -
Toolbox</em></strong>):</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart1.png"></p>
<p>The Toolbox should contain a new tab called
"<strong><em>ComponentOwl</em></strong>" containing all the installed component
from ComponentOwl, including Better ListView.</p>
<p>If you chose <strong><em>not to</em></strong> integrate component in
Visual Studio during installation or the component have not been
successfully integrated, please follow the next steps.</p>
<p>Right-click on empty area of the Toolbox window and select
"<strong><em>Choose Items...</em></strong>":</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart2.png"></p>
<p>In the "<strong><em>Choose Toolbox Items</em></strong>" dialog, select
the "<strong><em>.NET Framework Components</em></strong>" tab. If the comonent
has been properly installed, it will be already listed here. If you find
it, make sure the newest version is checked (e.g. 2.5.2.0 instead of
1.0.0.0) and click "<strong><em>OK</em></strong>":</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart3-1.png"></p>
<p>If you need other than installed version (e.g. DLL to match for
specific .NET Framework version) click on the
"<strong><em>Browse...</em></strong>" button:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart3-2.png"></p>
<p>Browse for the <span class="code">betterlistview.dll</span> file containing the
component.</p>
<p>The location depends on where you installed the product. The default
location is:</p>
<pre>C:\Program Files\Component Owl\Better ListView\Redistributable</pre>
<p>You can choose the file right within
"<strong><em>Redistributable</em></strong>" folder. This is .NET 2.0 component
compatible with .NET Framework 2.0 or higher. If you want binary for a
specific .NET version or Client Profile, choose the file from
"<strong><em>.NET Framework Specific</em></strong>" folder:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart4.png"></p>
<p>Make sure the check box next to
"<strong><em>BetterListView</em></strong>" is checked and click
"<strong><em>OK</em></strong>":</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart5.png"></p>
<p>Now the component should appear in your Toolbox:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart6.png"></p>
<p>Select the component and place it on designer surface:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart7.png"></p>
<p>Now you can design Better ListView the same way as any other
control:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart8.png"></p>
<h2>
<a name="troubleshooting" id="troubleshooting"></a>Installation
Troubleshooting</h2>
<p>If the component does not appear in Toolbox, make sure that your
target framework version is a full-featured .NET Framework 2.0, 3.0, 3.5
or 4.0. The Compact Framework is not supported.</p>
<p>You can also try the "<strong><em>Reset Toolbox</em></strong>" option
from the Toolbox context menu, restart Visual Studio and try to add the
control again.</p>
<p>Sometimes even the Toolbox can get corrupted (known issue on Visual
Studio 2010) and its cache needs to be cleared. Simply remove all
"<strong><em>.tbd</em></strong>" files from this folder:</p>
<p>Vista/Windows 7:</p>
<pre>\Users\&lt;user&gt;\AppData\Local\Microsoft\VisualStudio\10.0\*.tbd</pre>
<p>Windows XP:</p>
<pre>\Documents and Settings\&lt;user directory&gt;\Local Settings\Application Data\Microsoft\VisualStudio\10.0\*.tbd</pre>
<p>Make sure the Visual Studio is not running when removing the files.
The Toolbox should reload its default items when opened.</p>
<h2>
<a name="activation-online" id="activation-online"></a>Online Activation</h2>
<p>By default, Better ListView runs in <strong><em>trial</em></strong> mode.
The only limitations of <strong><em>trial</em></strong> version are watermark
displayed on the control...</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart-watermark.png"></p>
<p>and an <strong><em>Activation Dialog</em></strong>, that appears on every
application run:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart-activation.png"></p>
<p>There are three possible actions:</p>
<ul>
<li>
<p><strong><em>Purchase</em></strong> - obtain serial key for Better
ListView to activate it</p>
</li>
<li>
<p><strong><em>Activate</em></strong> - enter serial key to obtain
license</p>
</li>
<li>
<p><strong><em>Continue</em></strong> (or close the dialog) - skip this
dialog and start using Better ListView</p>
</li>
</ul>
<p>When activating Better ListView, you are asked for a serial key
(obtained by <strong><em><a href="../pricing-licensing/better-listview.html">pruchasing
Better ListView</a></em></strong>):</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart-sn.png"></p>
<br><hr>
<p class="note">Internet connection is required to activate Better ListView. If
you need to activate the product off-line, please <strong><em><a href="mailto:support@componentowl.com?subject=Offline%20Activation%20of%20Better%20ListView">contact
us</a></em></strong>.</p>
<hr>
<br><p>When the Better ListView is activated, it uses the standard
licensing scheme of .NET. When a form is created or opened in
<strong><em>Windows Forms Designer</em></strong>, a
<strong><em>licenses.licx</em></strong> file is updated in your project and the
trial version notification disappears.</p>
<h2>
<a name="activation-offline" id="activation-offline"></a>Offline Activation</h2>
<p>If the activation is blocked by a firewall or proxy server, you can
activate Better ListView <strong><em>offline</em></strong>.</p>
<p>First, call the following static method from code:</p>
<pre>BetterListView.ShowOfflineActivationDialog()</pre>
<p>A dialog appears containing your computer ID:</p>
<p class="images"><img src="../documentation/better-listview/data/quickstart-activation-offline.png"></p>
<p>Please copy this code to clipboard (Control+C) and send us the code
along with your <strong><em>serial number</em></strong> you obtained when
purchased the product to <strong><em><a href="mailto:support@componentowl.com?subject=Offline%20Activation%20of%20Better%20ListView">support@componentowl.com</a></em></strong>.</p>
<p>The serial number is a 16-character code the identifies your
purchased product, e.g.:</p>
<p></p>
<pre>5KTPNX6QNJBZNJTL</pre>The computer ID is
rather longer code that is unique to your machine:
<pre>6780f65cb1b86f9a10dacc662906c3d371ab4abc</pre>
<p>With this information, we will generate a license file and send it
to back to you via e-mail.</p>
<p>You can find a file <span class="code">license-blv.dat</span> in the e-mail
attachment we send in reply. Please copy this file in the following path
(and create the folder <span class="code">Component Owl</span> if it does not
exist):</p>
<p>Windows 7, 8, Vista:</p>
<pre>c:\ProgramData\Component Owl\</pre>
<p>Windows XP:</p>
<pre>c:\Documents and Settings\All Users\Application Data\Component Owl\</pre>
<p>Now just rebuild the project referencing Better ListView and you are
done.</p>
<p>Please note the license works for <strong><em>specific
product</em></strong> and <strong><em>specific computer</em></strong>. It won't
work on other machines or with other Component Owl's products. You need to
activate Better ListView for each machine on which you want to build
projects.</p>
<h2>Updating to Newer Version of Better ListView</h2>
<p>If a new version of Better ListView is released, to update to newer
version, simply <strong><em><a href="../betterlistview.exe">download</a></em></strong>
and install the new version. The installer will prompt for updating to a
new version.</p>
<p>The DLL with the component (<span class="code">betterlistview.dll</span>) is
installed usually in <strong><em>Program Files</em></strong> folder, so if you
use copies of the library on other locations on your disk, replace the old
copies with the new version.</p>
<p>The <strong><em>licenses.licx</em></strong> file in your project may also
point to an older version of Better ListView. To update
<strong><em>licenses.licx</em></strong> open some form with Better ListView in
<strong><em>Windows Forms Designer</em></strong> and compile. A new line will
be added to the <strong><em>licenses.licx</em></strong> for the new version of
the Better ListView. You can delete the line with the reference to older
version, e.g.:</p>
<pre>ComponentOwl.BetterListView.BetterListView, BetterListView, Version=1.4.0.0, Culture=neutral, PublicKeyToken=e6c91a3add447be2</pre>
<p>should be switched to:</p>
<pre>ComponentOwl.BetterListView.BetterListView, BetterListView, Version=2.7.0.0, Culture=neutral, PublicKeyToken=e6c91a3add447be2</pre>
<p>if <span class="code">2.7.0.0</span> is the updated version of Better ListView.
You can do the update of <strong><em>licenses.licx</em></strong> file with text
editor within <strong><em>Visual Studio</em></strong>, if you know the new
version number.</p>
<p><br></p>
<hr>
<p class="note">If you use Better ListView in separate project, you need to copy
<strong><em>licenses.licx</em></strong> file to the main project as
well.</p>
<hr>
<br><h2>
<a name="migrating" id="migrating"></a>Migrating from .NET ListView</h2>
<p>We did our best to make Better ListView as similar to regular .NET
ListView as possible while having all its extra features. Better ListView,
however, is not a ListView-derived control - it is completely autonomous
WinForms control. The following rules of thumb will help you to migrate
from ListView to Better ListView:</p>
<ul>
<li>
<p>Most structures are named equally, only with
<strong><em>Better-</em></strong> prefix (e.g.
<span class="code">BetterListViewItem</span> instead of
<span class="code">ListViewItem</span>).</p>
</li>
<li>
<p>Better ListView <strong><em>does not</em></strong> use the same
structures and classes as .NET ListView (e.g. use
<span class="code">ComponentOwl.BetterListView.BetterListViewView</span> instead of
<span class="code">System.Windows.Forms.View</span>).</p>
</li>
<li>
<p>Many features and structures of Better ListView are richer (e.g.
insertion mark, Drag and Drop functionality). The types contain extra
overrides for constructors, methods and properties. They should be
sometimes used differently and they behave little bit differently;
look in the documentation first to avoid confusion.</p>
</li>
</ul>
<p>To compare usage of .NET ListView and Better ListView, consider the
following code using Better ListView instead the regular .NET
ListView:</p>
<p><strong>C#</strong></p>
<pre class="prettyprint"><code class="lang-cs">BetterListView listView = new BetterListView();
BetterListViewItem item = new BetterListViewItem("new item");
listView.Items.Add(item);
listView.View = BetterListViewView.List;
// ...
BetterListViewHitTestInfo hitTestInfo = listView.HitTest(new Point(0, 0));</code></pre>
<p><strong>Visual Basic</strong></p>
<pre class="prettyprint"><code class="lang-vb">Dim listView As New BetterListView()
Dim item As New BetterListViewItem("new item")
listView.Items.Add(item)
listView.View = BetterListViewView.List
' ...
Dim hitTestInfo As BetterListViewHitTestInfo = listView.HitTest(New Point(0, 0))</code></pre>
<h2>
<a name="support" id="support"></a>Learning resources and getting
support</h2>
<p>The documentation and learning resources include:</p>
<ul>
<li>
<p><strong><em>HTML documentation</em></strong> with about 30 chapters
(the Quick Start guide you are reading right now is the second
chapter)</p>
</li>
<li>
<p>Sample projects in C# and VB.NET</p>
</li>
<li>
<p>Samples Explorer</p>
</li>
<li>
<p>Class Reference (technical documentation)</p>
</li>
</ul>
<p>You can find all these resources in <strong><em>Start Menu -
ComponentOwl - Better ListView</em></strong>.</p>
<p>The C# and Visual Basic Samples are located at:</p>
<p>Windows 7, 8, Vista:</p>
<pre>\Users\&lt;user&gt;\Documents\ComponentOwl\Better ListView Samples</pre>
<p>Windows XP:</p>
<pre>\Documents and Settings\&lt;user directory&gt;\My Documents\ComponentOwl\Better ListView Samples</pre>
<p>Make sure the Visual Studio is not running when removing the files.
The Toolbox should reload its default items when opened.</p>
<p>We will happily answer any of your questions and provide further
assistance. Just email us at <strong><em><a href="mailto:support@componentowl.com?subject=Better%20ListView%20Support">support@componentowl.com</a></em></strong>.
Or, you can use the online form at <strong><em><a href="../support.html">www.componentowl.com/support</a></em></strong>.</p>
<br><div class="banner">
<a href="../better-listview.html"><img src="../documentation/better-listview/resources/overview.gif" alt="Better ListView" class="ss"></a>
<div class="inside">
<div class="text">Better ListView: Ultimate .NET ListView replacement control for WinForms (C#, VB.NET)</div>
<span class="dbtn-c dbtn-hilight"><span class="dbtn-w"><a href="../betterlistview.exe" class="dbtn">Download</a></span></span>
<span class="dbtn-c"><span class="dbtn-w"><a href="../better-listview.html" class="dbtn">More Info</a></span></span>
</div>
</div>
<table class="navigation"><tr>
<td class="navigation-previous"><a href="../documentation/better-listview/data/chapter-introduction.html"><strong>
« Introduction, Comparison</strong></a></td>
<td class="navigation-index"><a href="../quick-start-guide/better-listview/index.html"><strong>Index</strong></a></td>
<td class="navigation-next"><a href="../documentation/better-listview/data/chapter-background-image.html"><strong>Background Image »
</strong></a></td>
</tr></table>
<br><table class="footer"><tr>
<td class="footer-title">Better ListView Documentation
</td>
<td class="footer-copyright">
Copyright © 2010-2012  <a href="../index.html" target="_blank">ComponentOwl.com</a>
</td>
</tr></table>
</div></body>
</html>

View File

@@ -0,0 +1,984 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="list view, listview, list view control, list view component, .net list view, list view replacement, list view alternative, improved list view, enhanced list view" />
<meta name="description" content="Better ListView by Component Owl is a .NET WinForms control designed to replace the standard list view control included with C#/VB.net." />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)" />
<meta name="copyright" content="(c) 2010-2018 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="../feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="../comics.rss" />
<link href="../stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="d-page">
<script type="text/javascript">
//<![CDATA[
var t = {"antispam":"capek-rulz","purchase_email":"valid purchase email","valid_email":"a valid email","thanks_for_why_uninstall":"Thank you very much for your feedback!","thank_you":"Thank you!","current_email":"valid current email","thanks_for_subscription":"<div class=\"sent-saved-notice\">Thank You for your subscription!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","message":"message","required":"required","download_in_progress":"Your download should be in progress...","your_full_name":"your full name","order_thanks_for_message":"<div class=\"sent-saved-notice\">Thank you very much for your message!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","thanks_for_message":"Thank you very much for your message!<br /><a href="http://www.componentowl.com/better-listview/\&quot;#\"" onclick=\"send_another(); return false;\">Send Another Message</a>"}
//]]>
</script>
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="../index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="../better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="../better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="../better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="../better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="../better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="../pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="../pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="../pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="../pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="../support.html" class="menu-item">Support</a></li>
<li class=""><a href="../articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="../blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="../comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="../about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="../index.html" class="logoimg"><img alt="Component Owl" src="../images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<ul id="nav" class="nav">
<li><a href="../better-listview.html" class="current">&laquo; Back to the product overview</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail releases"><form action="http://www.componentowl.com/better-listview/releases" method="get">
<div class="changes-since">
Show changes since: <select class="autosubmit" id="since" name="since"><option value="3.14.0">3.14.0</option>
<option value="3.13.0">3.13.0</option>
<option value="3.12.0">3.12.0</option>
<option value="3.11.0">3.11.0</option>
<option value="3.10.0">3.10.0</option>
<option value="3.9.1">3.9.1</option>
<option value="3.9.0">3.9.0</option>
<option value="3.8.3">3.8.3</option>
<option value="3.8.2">3.8.2</option>
<option value="3.8.1">3.8.1</option>
<option value="3.8.0">3.8.0</option>
<option value="3.7.7">3.7.7</option>
<option value="3.7.6">3.7.6</option>
<option value="3.7.5">3.7.5</option>
<option value="3.7.4">3.7.4</option>
<option value="3.7.3">3.7.3</option>
<option value="3.7.2">3.7.2</option>
<option value="3.7.1">3.7.1</option>
<option value="3.7.0">3.7.0</option>
<option value="3.6.1">3.6.1</option>
<option value="3.6.0">3.6.0</option>
<option value="3.5.0">3.5.0</option>
<option value="3.4.3">3.4.3</option>
<option value="3.4.2">3.4.2</option>
<option value="3.4.1">3.4.1</option>
<option value="3.4.0">3.4.0</option>
<option value="3.3.2">3.3.2</option>
<option value="3.3.1">3.3.1</option>
<option value="3.3.0">3.3.0</option>
<option value="3.2.2">3.2.2</option>
<option value="3.2.1">3.2.1</option>
<option value="3.2.0">3.2.0</option>
<option value="3.1.1">3.1.1</option>
<option value="3.1.0">3.1.0</option>
<option value="3.0.0">3.0.0</option>
<option value="2.9.1">2.9.1</option>
<option value="2.9.0">2.9.0</option>
<option value="2.8.0">2.8.0</option>
<option value="2.7.5">2.7.5</option>
<option value="2.7.4">2.7.4</option>
<option value="2.7.3">2.7.3</option>
<option value="2.7.2">2.7.2</option>
<option value="2.7.1">2.7.1</option>
<option value="2.7.0">2.7.0</option>
<option value="2.6.0">2.6.0</option>
<option value="2.5.8">2.5.8</option>
<option value="2.5.7">2.5.7</option>
<option value="2.5.6">2.5.6</option>
<option value="2.5.5">2.5.5</option>
<option value="2.5.4">2.5.4</option>
<option value="2.5.3">2.5.3</option>
<option value="2.5.2">2.5.2</option>
<option value="2.5.1">2.5.1</option>
<option value="2.5.0">2.5.0</option>
<option value="2.4.3">2.4.3</option>
<option value="2.4.2">2.4.2</option>
<option value="2.4.1">2.4.1</option>
<option value="2.4.0">2.4.0</option>
<option value="2.3.3">2.3.3</option>
<option value="2.3.2">2.3.2</option>
<option value="2.3.1">2.3.1</option>
<option value="2.3.0">2.3.0</option>
<option value="2.2.0">2.2.0</option>
<option value="2.1.3">2.1.3</option>
<option value="2.1.2">2.1.2</option>
<option value="2.1.1">2.1.1</option>
<option value="2.1.0">2.1.0</option>
<option value="2.0.3.2">2.0.3.2</option>
<option value="2.0.3">2.0.3</option>
<option value="2.0.2">2.0.2</option>
<option value="2.0.1">2.0.1</option>
<option value="2.0">2.0</option>
<option value="1.521">1.521</option>
<option value="1.52">1.52</option>
<option value="1.51">1.51</option>
<option value="1.50">1.50</option>
<option value="1.40" selected="selected">1.40</option></select>
</div>
</form>
<hr />
<h2 class="first">What's New in Better ListView since version 1.40</h2>
<h3>Changes in version 3.14.0 (Apr 08, 2015)</h3>
<p>* Fixed scrolling when all items are unselectable</p>
<h3>Changes in version 3.13.0 (Dec 02, 2014)</h3>
<p>* Fixed drag selections (not all intersecting items were always selected)
<br />* Fixed sub-item focus rectangle display in Details view when FullRowSelect is false
<br />* Fixed sub-item background display in Details view when FullRowSelect is false
<br />* Fixed text highlighting not updating properly after automatic column resizing</p>
<h3>Changes in version 3.12.0 (Sep 13, 2014)</h3>
<p>* Added column unsorting by middle mouse button
<br />
<br />* Fixed hit test on items in List view</p>
<h3>Changes in version 3.11.0 (Aug 06, 2014)</h3>
<p>* Added overlay image alignments support for columns and items in Detail view
<br />
<br />* Fixed dragging empty selection when MultiSelect=False and user dragged item with Control key pressed</p>
<h3>Changes in version 3.10.0 (Jul 06, 2014)</h3>
<p>* Added sub-item check boxes and radio buttons support
<br />* Added support for custom disabled check boxes and radio buttons
<br />
<br />* Fixed ObjectDisposedException being raised when closing Form right after clicking an item
<br />* Fixed RemoveSearchHighlight to work in item hierarchy
<br />* Fixed drawing of group header when the group is focused by keyboard</p>
<h3>Changes in version 3.9.1 (May 19, 2014)</h3>
<p>* Fixed disappearing items after scrolling and item reordering in LargeIcon view with multi-line items</p>
<h3>Changes in version 3.9.0 (Apr 22, 2014)</h3>
<p>* Added integration with Visual Studio 2013
<br />* Added custom date format support in BetterListViewDateTimePickerEmbeddedControl
<br />* Added ItemReordered event
<br />
<br />* Fixed FindItemsWithText method call when working with invisible items
<br />* Fixed saving form after editing tooltips in Windows Forms Designer</p>
<h3>Changes in version 3.8.3 (Feb 03, 2014)</h3>
<p>* Fixed sorting of items with missing sub-items or Key set to null</p>
<h3>Changes in version 3.8.2 (Oct 21, 2013)</h3>
<p>* Fixed pixel precision bug in column selection
<br />* Fixed proper scrolling on combined items using EnsureVisible method
<br />* Fixed drawing item selection on MouseUp in some cases (click directly on text of previously selected item in Details view)</p>
<h3>Changes in version 3.8.1 (Sep 20, 2013)</h3>
<p>* Fixed search highlight in other than Details view</p>
<h3>Changes in version 3.8.0 (Sep 11, 2013)</h3>
<p>* Fixed search highlight on multi-line items</p>
<h3>Changes in version 3.7.7 (Aug 27, 2013)</h3>
<p>* Added HotTracking property
<br />* Added SmoothScroll property
<br />
<br />* Improved responsiveness (optimized control refreshing on control state transitions)
<br />
<br />* Fixed BetterListViewColumnHeader.DisplayIndex property value not being updated at the time of ColumnHeaderReordered event
<br />* Fixed bug in hit test invalidation optimization causing slower redrawing when mouse moves over large control with many items and columns</p>
<h3>Changes in version 3.7.6 (Jul 06, 2013)</h3>
<p>* Fixed item deselection when clicking on client area</p>
<h3>Changes in version 3.7.5 (Jun 24, 2013)</h3>
<p>* Fixed item selection by clicking on group header</p>
<h3>Changes in version 3.7.4 (Jun 05, 2013)</h3>
<p>* Removed beep when no item is found though single keypress (keyboard search)
<br />
<br />* Fixed keyboard search</p>
<h3>Changes in version 3.7.3 (May 30, 2013)</h3>
<p>* Fixed keyboard search with 'Substring' setting and single keystroke
<br />* Fixed rare but possible NullRefereceException in OnMouseUp method</p>
<h3>Changes in version 3.7.2 (Apr 10, 2013)</h3>
<p>* SuspendSelectionChanged renamed to SuppressSelectionChanged
<br />
<br />* Fixed selection display when FullRowSelect is false in Details view
<br />* Fixed grid lines display when HeaderStyle is None in Details view
<br />* Fixed closing floating window in Samples Explorer</p>
<h3>Changes in version 3.7.1 (Mar 28, 2013)</h3>
<p>* Fixed Visual Studio Toolbox integration on Windows XP</p>
<h3>Changes in version 3.7.0 (Mar 19, 2013)</h3>
<p>* Added HScrollHeight, VScrollWidth properties</p>
<h3>Changes in version 3.6.1 (Mar 01, 2013)</h3>
<p>* Fixed unnecessary redrawing during MouseMove</p>
<h3>Changes in version 3.6.0 (Feb 28, 2013)</h3>
<p>* Fixed possible exception when invoking context menu on an item by mouse
<br />* Fixed multi-line text when TextTrimming is set to None
<br />* Fixed public constructor parameters being obfuscated</p>
<h3>Changes in version 3.5.0 (Jan 28, 2013)</h3>
<p>* Added owner drawing support for drag selection
<br />* Added data binding customization
<br />* Added separate product activation utility</p>
<h3>Changes in version 3.4.3 (Jan 18, 2013)</h3>
<p>* Added BetterListViewHitTestInfo.MousePosition property
<br />
<br />* Fixed unhandled exception on web request timeout when activating over web proxy</p>
<h3>Changes in version 3.4.2 (Jan 12, 2013)</h3>
<p>* Added separate column auto resizing for column header, column content or both (BetterListViewColumnHeaderAutoResizeStyle changed to flags enum)
<br />
<br />* Fixed DoubleClick and ItemActivate not raised when the redrawing takes too much time between successive clicks
<br />* Fixed Combined Items
<br />
<br /> * Fixed check boxes and expand buttons of children in combined items being inactive
<br /> * Fixed combined item not being properly measured when its child has been made invisible
<br /> * Fixed insertion mark display on combined items
<br />
<br />* Fixed online activation from behind a web proxy
<br />* Fixed binding DataTable in the Data Binding sample
<br />* Fixed unnecessary refreshes during binding a table with multiple columns</p>
<h3>Changes in version 3.4.1 (Dec 20, 2012)</h3>
<p>* Added possibility of changing label being edited by setting Label property in BeforeLabelEdit and AfterLabelEditCancel event data
<br />
<br />* Improved Visual Studio Toolbox integration for more versions of .NET Framework, including Client Profile
<br />
<br />* Fixed possible NullReferenceException during clicking on column headers (negative mouse cursor coordinates probably due to mouse movement)</p>
<h3>Changes in version 3.4.0 (Dec 14, 2012)</h3>
<p>* Added 'Search Highlight' feature
<br />
<br /> * Added SearchHighlight, SearchHighlightColor, SearchHighlightBorderColor, SearchHighlightTextColor properties
<br /> * Added BetterListViewSearchOptions.UpdateSearchHighlight enum value
<br /> * Added BetterListViewSubItemBounds.BoundsSearchHighlight property
<br />
<br />* Fixed IndexOf() method on collections to return -1 if an element is not contained in the collection
<br />* Fixed case where clickable/sortable/unsortable column is clicked and mouse cursor moves quickly away
<br />* Fixed column auto resizing to account for groups and hierarchical items
<br />* Fixed not allowing to put duplicate references in SelectedItems.Set(IEnumerable<BetterListViewItem>) or SelectedItems.AddRange(IEnumerable<BetterListViewItem>)</p>
<h3>Changes in version 3.3.2 (Dec 08, 2012)</h3>
<p>* Fixed moving mouse cursor over an item that is partially scrolled out so that the text boundaries have negative top coordinate
<br />* Fixed ItemActivate not raised on slow computers when item is double-clicked and mouse cursor moved quickly away</p>
<h3>Changes in version 3.3.1 (Dec 06, 2012)</h3>
<p>* Added ColumnReorder event next to existing ColumnReordered event to allow cancelling column reordering
<br />* Added keyboard-invoked context menu placements (ContextMenuStripPlacement property)
<br />
<br />* Improved context menu placement: Keyboard-invoked context menu is displayed under the first visible selected item
<br />* Improved grid lines appearance
<br />* Improved item parts alignment when expand buttons are present
<br />
<br />* Fixed possible improper behavior on slower computers (or lagging code because of too much drawing etc.)
<br />
<br /> * Fixed item not selected clicked and mouse cursor is immediately moved away
<br /> * 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
<br /> * 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</p>
<h3>Changes in version 3.3.0 (Nov 30, 2012)</h3>
<p>* Added FIPS-compliance (improved security and compatibility)
<br />
<br />* Improved horizontal multi-line text alignment
<br />* Improved Samples Explorer
<br />
<br />* Properties VisibleColumns, VisibleGroups, VisibleItems hidden from Properties window in the WinForms Designer
<br />
<br />* Fixed commencing mouse drag selecting on double-click and mouse move in quick succession
<br />* Fixed scrolling to parent item vertically when only child item have been selected
<br />* Fixed AutoResizeColumns updating just the last column
<br />* Fixed column header sort glyph placement when the column is sorted and no items are present in the list
<br />* Fixed image border color not changing when ImageBorderColor layout property changed</p>
<h3>Changes in version 3.2.2 (Oct 09, 2012)</h3>
<p>* Added support for TypeConverters when adding custom objects to collections
<br />
<br />* Improved horizontal scrolling on items within item hierarchy
<br />
<br />* Fixed reordering item in an empty or collapsed group</p>
<h3>Changes in version 3.2.1 (Sep 18, 2012)</h3>
<p>* Allowed setting Font property to null on column headers, groups, items and sub-items
<br />
<br />* Fixed cycling between items during keyboard search
<br />* Fixed code generation for SearchSettings property
<br />* Fixed NullReferenceException when edited sub-item is switched during label editing
<br />* Fixed multi-line text wrapping when BetterListViewItem.CheckBoxAppearance is set to None
<br />* Fixed sorted column background being drawn in other than Details view
<br />* Fixed unsufficient vertical scroll bar maximum when column headers are added in first initialization between BeginUpdate()/EndUpdate()
<br />* Fixed double-click on column containing hidden check box</p>
<h3>Changes in version 3.2.0 (Aug 27, 2012)</h3>
<p>* Added HeaderStyle property
<br />* Added BetterListViewColumnHeaderStyle.None enum value (indicates that column header is not displayed, but corresponding sub-items are)
<br />* Added BetterListViewColumnHeaderStyle.Hidden enum value (indicates that column header is hidden, including sub-items)
<br />
<br />* Improved mouse and keyboard selections to behave more like Windows Explorer
<br />* Merged BetterListViewColumnHeaderStyle.Hidden enum value and BetterListViewColumnHeader.Value
<br />* Control+Shift modifier keys behave the same way as Control modifier key alone in Multi-column Sorting
<br />* Hidden ShowItemExpandButtons property in Express edition
<br />
<br />* Fixed possible multiselection using Control+click when MultiSelect is false</p>
<h3>Changes in version 3.1.1 (Aug 07, 2012)</h3>
<p>* Fixed selected child items not removed from SelectedItems collection after BetterListView.Items.Clear() call
<br />* Fixed designer not supporting some BetterListViewColumnHeaderStyle enum values well</p>
<h3>Changes in version 3.1.0 (Aug 03, 2012)</h3>
<p>* Added BetterListViewDropPart.On
<br />* Added BetterListViewLabelEditCancelEventArgs, BetterListViewLabelEditCancelEventHandler for BeforeLabelEdit, AfterLabelEditCancel events
<br />* Added OnDrawInsertionMark method, DrawInsertionMark event
<br />* Added BetterListViewInsertionLocation.Offset property
<br />* Added CollapsedItemUnselection property (child item unselection behaviors when parent item is collapsed)
<br />* Added CheckBoxesAlign property to make parent items without check boxes more distinguishable in hierarchy
<br />* Added BetterListViewLabelEditActivation.ClickThrough label editing option
<br />* BetterListViewCheckItemReorderEventArgs now inherits from DragEventArgs to provide more information relevant to Drag and Drop
<br />* Added BetterListViewCheckItemReorderEventArgs.InvalidationReasons property to allow working with different reasons for item reorder invalidation
<br />* Added BetterListViewColumnHeaderStyle.Unsortable enum value
<br />* Added BetterListViewHitTestInfo.ColumnArea enum value
<br />* Added unsorting individual columns using Control modifier key when multi-column sorting is active
<br />
<br />* Improved performance of hierarchical items
<br />* When parent item is collapsed and any of its children selected, the parent itself gets selected
<br />* Changed EnsureVisible(BetterListViewItemCollection) to EnsureVisible(ICollection<BetterListViewItem>); this avoids unnecessary wrapping of collections
<br />* 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
<br />* 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
<br />
<br />* Removed CancelEdit from AfterLabelEdit event data, AfterLabelEditCancel should be used instead
<br />
<br />* Fixed changing selection from user code within ItemDrop event handler
<br />* Fixed BetterListViewItemReorderEventArgs.Locations can contain wrong values and missing child item indices
<br />* Fixed sorting items with hierarchy when some item contains more child items than there are top-level items
<br />* Fixed begining label editing when a single item is deselected using mouse and Control modifier key is pressed
<br />* Fixed updating last selected element when selection is changed programmatically
<br />* Fixed flickering when scrolling by moving selection using arrow keys
<br />* Fixed measurement of items not resetting when expand button is displayed by adding child items
<br />* Fixed not allowing to reorder item after last child item, but on higher level
<br />* Fixed BetterListViewItemEnumerator
<br />* Fixed items not positioned properly when ShowDefaultGroupHeader property value is changed
<br />
<br />BREAKING CHANGES:
<br />
<br />* UnselectCollapsedItems property renamed to CollapsedItemUnselection</p>
<h3>Changes in version 3.0.0 (Jul 10, 2012)</h3>
<p>* Added support for Client Profile versions of .NET Framework
<br />* Added accessibility support
<br />
<br />* Added AccessibleObject implementations
<br />* Added protected virtual methods DoDefaultAction(BetterListViewColumnHeader) and DoDefaultAction(BetterListViewItem)
<br />
<br />* Added CircularSelection property
<br />* Added BetterListViewItem.CheckBoxAppearance property
<br />* Added BetterListViewItem.CustomDropDisplayExternal, BetterListViewItem.CustomDropDisplayInternal properties
<br />* Added BetterListViewSubItem.DisplayIndex property
<br />* Added BetterListViewDragDropEffectSettingEventArgs.UpdateInsertionMark property
<br />
<br />* Added custom item/sub-item text formatting
<br />
<br /> * Added BetterListView.FormatItem
<br /> * Added BetterListViewSubItem.FormatText property
<br /> * Added BetterListViewSubItem.DisplayText property
<br /> * Added BetterListViewItem.DisplayText
<br /> * Added BetterListViewItem.FormatText property
<br /> * Added BetterListViewItem.OnFormat
<br /> * Added BetterListViewItem.RefreshDisplayText
<br />
<br />* Added VisibleColumns, VisibleGroups, VisibleItems properties
<br />* Added BetterListViewColumnHeader.NextVisibleColumnHeader, BetterListViewColumnHeader.PreviousVisibleColumnHeader properties
<br />* Added check on setting IsValid to true in CheckItemReorder event handler
<br />
<br />* Added automatic sorting of item hierarchy
<br />
<br /> * Added BetterListViewItem.AllowSortChildItems property to customize hierarchical sorting
<br />
<br />* Added detecting source of item check state change
<br />
<br /> * Added BetterListViewCheckedItemsChangedEventArgs.CheckStateChangeMode
<br /> * Added BetterListViewItemCheckEventArgs.CheckStateChangeMode
<br /> * Added BetterListViewItemCheckedEventArgs.CheckStateChangeMode
<br />
<br />* Improved detecting clicking on empty space in multi-line text
<br />* Improved display of check box in cut state
<br />* Improved serialization and ToString methods using invariant culture whenever appropriate
<br />* Improved BetterListViewNaturalItemComparer to handle arbitrarily large numbers
<br />* When AutoResizeColumn is called between BeginUpdate() and EndUpdate(), the resizing is postponed until the EndUpdate() call
<br />
<br />* Changed type of ImageSize layout property
<br />* Renamed BetterListViewLayoutItems.ImageSizes property to BetterListViewLayoutItems.SubItemImageSizes
<br />* Removed 'sealed' modifier from BetterListViewSubItem class to allow inheritance
<br />* Removed restoring selection when ItemReorderMode is set to Custom
<br />
<br />* Fixed moving selection on group headers using left/right arrow keys in List view
<br />* Fixed BetterListViewItem.CustomHeight property not taken into account in EqualsContent and Clone methods
<br />
<br />* Fixed BetterListViewSubItemCollection
<br />
<br /> * Fixed custom collection always containing a single sub-item when created
<br /> * Fixed cloning
<br />
<br />* Fixed unselecting item when clicked outside items and MultiSelect = false
<br />* Fixed selecting items ranging from and item to nearest group header above it
<br />* Fixed serialization of an empty list
<br />* Fixed display of right-aligned text when image is displayed after the text (columns, groups, items/sub-items)
<br />* Fixed display of group header splitter line when the text is centered or right-aligned
<br />* Fixed display of item selection in Details view when FullRowSelect is set to false
<br />* Fixed cloning of BetterListViewItem.CheckState property
<br />* Fixed first sub-item image disappearing when sub-item ImageKey property is set to null
<br />* Fixed measurement of default group header
<br />
<br />BREAKING CHANGES
<br />
<br />* Replaced BetterListViewItem.ShowCheckBox by BetterListViewItem.CheckBoxAppearance
<br />* Replaced BetterListViewItem.AllowDropHighlight by BetterListViewItem.CustomDropDisplayExternal and BetterListViewItem.CustomDropDisplayInternal
<br />* Changed type of ImageSize layout property
<br />* Renamed BetterListViewLayoutItems.ImageSizes property to BetterListViewLayoutItems.SubItemImageSizes</p>
<h3>Changes in version 2.9.1 (May 03, 2012)</h3>
<p>* Added GetDropInfo method
<br />
<br />* Fixed some Drag and Drop flaws</p>
<h3>Changes in version 2.9.0 (Apr 19, 2012)</h3>
<p>* Added AlignHorizontalImage, AlignVerticalImage properties in BetterListViewItem, BetterListViewSubItem and BetterListViewColumnHeader
<br />* Added HeaderAlignmentHorizontalImage, HeaderAlignmentVerticalImage in BetterListViewGroup
<br />* Added GetDropInfo method to determine drop/insertion location during Drag and Drop from user code
<br />* Enabled group focusing by right mouse button
<br />
<br />* Improved text clipping
<br />
<br />* Fixed EqualsContent and CopyTo methods of Better ListView element classes (missing AlignVertical/HeaderAlignmentVertical property)
<br />* Fixed vertical image alignment in Tile view
<br />* Fixed display of vertically centered text in LargeIcon and Thumbnail view
<br />* Fixed NullReferenceException when InsertionMark with empty insertion location is set</p>
<h3>Changes in version 2.8.0 (Apr 10, 2012)</h3>
<p>* Added SubItemFocusBehavior property
<br />
<br />* Fixed problem when windows theme is changed to Aero in run-time
<br />* Fixed keeping state of the control when focus is lost
<br />* Fixed rasing SelectedItemsChanged even when drag selection ended by losing focus or mouse capture change
<br />* Fixed horizontal scroll bar having SmallChange value too small when no items are visible (only groups)
<br />* Fixed column headers not refreshing properly on custom scrolling in updating mode
<br />* Fixed auto scrolling triggered during drag selecting when owner form has been minimized</p>
<h3>Changes in version 2.7.5 (Apr 03, 2012)</h3>
<p>* Added automatic removal of items from the list when removed from a group
<br />
<br />* Fixed BetterListViewItem.IsExpanded always 'true' in cloned items
<br />* Fixed improper alignment of items when a new item with children is added to flat list
<br />* Fixed combined item not showing combined selection when added during control initialization</p>
<h3>Changes in version 2.7.4 (Mar 28, 2012)</h3>
<p>* Fixed refreshing scrolled item when BetterListViewItem.Image property is changed</p>
<h3>Changes in version 2.7.3 (Mar 26, 2012)</h3>
<p>* Fixed item redrawing when selection is changed
<br />* Fixed label editing in SmallIcon and List view</p>
<h3>Changes in version 2.7.2 (Mar 23, 2012)</h3>
<p>* Fixed BetterListViewItem.Bounds and BetterListViewItem.GetBounds() returning null</p>
<h3>Changes in version 2.7.1 (Mar 22, 2012)</h3>
<p>* Removed unnecessary redrawing in mouse events (caused by EnsureVisible)
<br />
<br />* Fixed optimized redrawing in some cases when focus is changed</p>
<h3>Changes in version 2.7.0 (Mar 21, 2012)</h3>
<p>* Added BetterListViewItem.CustomHeight property
<br />* Added MaximumToolTipTextLength property
<br />
<br />* Removed unnecessary spacing for expand buttons when ShowItemExpandButtons is set to false
<br />* Optimized redrawing when changing item focus or selection
<br />
<br />* Fixed possible ItemActivate after drag selection or vice verse
<br />* Fixed text wrap when the text contains ampersand symbols
<br />* Fixed activation through web proxy
<br />* Workaround for .NET performance issuewhen displaying automatic tooltips with very long text</p>
<h3>Changes in version 2.6.0 (Mar 13, 2012)</h3>
<p>* Added support for ElementOuterPadding layout property in Details view
<br />
<br />* 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)
<br />
<br />* Resolved some issues caused by obfuscation</p>
<h3>Changes in version 2.5.8 (Mar 01, 2012)</h3>
<p>2.5.8.0
<br />
<br />* Enabled Better ListView to be used from C++/CLI (resolved obfuscation issues)</p>
<h3>Changes in version 2.5.7 (Feb 26, 2012)</h3>
<p>* Fixed problem when setting ImageKey to data-bound items</p>
<h3>Changes in version 2.5.6 (Feb 22, 2012)</h3>
<p>* Improved automatic tooltips for Details view with columns
<br />
<br />* Fixed column not resizing when double-clicked on the resizing area
<br />* Fixed control not refreshing properly when Enabled property is changed on parent control
<br />* Fixed nested RefreshView call causing column headers to break in some cases
<br />* Fixed scrolling about 1 pixel after label editing (vertically scrolled) last item in Details view
<br />* Fixed possible NullReferenceException when clicking on item check box
<br />* Fixed group font problem when 'Segoe UI Regular' font is not installed</p>
<h3>Changes in version 2.5.5 (Feb 08, 2012)</h3>
<p>* Fixed updating control while having zero dimensions
<br />* Fixed ItemActivate not raised when MultiSelect is false</p>
<h3>Changes in version 2.5.4 (Feb 06, 2012)</h3>
<p>* Added BetterListViewLabelEditActivation.Immediate
<br />* Added sample for BetterListViewItem.Visible property
<br />* Standard label editing can be invoked by clicking outside of text area
<br />* Single-click labele editing can be invoked by clicking on item/sub-item text even if the item is not selected
<br />
<br />* Fixed Invalidate method of BetterListViewColumnHeader, BetterListViewItem, BetterListViewGroup
<br />* Fixed default button of the Form pressing after text label editing
<br />* Fixed group headers not updating when MinimumSize property of the group layout changed
<br />* Fixed possible entering inconsistent state when the control has zero dimensions
<br /></p>
<h3>Changes in version 2.5.3 (Feb 03, 2012)</h3>
<p>2.5.3.0
<br />
<br />* Fixed problem when all items in a group set invisible (BetterListViewItem.Visible set to false)
<br />* Fixed problem when sub-items of an item are clear while some sub-item is focused
<br /></p>
<h3>Changes in version 2.5.2 (Feb 02, 2012)</h3>
<p>* Added BetterListViewItem.Visible property
<br />* Added ToString(bool) method in some collection classes to allow printing out list of individual items
<br />* More detailed information returned in ToString methods of Better ListView elements
<br />
<br />* Improved group header font fallback
<br />* HitTest returns BetterListViewHitTestInfo.Empty when the control is updating
<br />* When ContextMenuStrip is available, it can be used instead of ContextMenuStripItems
<br />* BufferedGraphicsContext for control double-buffering is obtained from BufferedGraphicsManager instead of creating new
<br />
<br />* Fixed changing component names in Visual Studio Component Designer (column headers, items, sub-items and groups)
<br />* Fixed calling EnsureVisible when the control is updating (scrolling postponed util EndUpdate is called)
<br />* Fixed selected item kept in SelectedItems collection when replaced using indexer (e.g. BetterListView.Items[1] = newItem)
<br />* Fixed problem when clicking on column header and quickly moving mouse pointer outside client area
<br />* Fixed return value of BetterListViewAddress.ToString
<br />* Fixed Document Outline window blinking in Windows Forms Designer when BetterListViewItem is selected and Properties window opened at the same time
<br />* Fixed group header text disappearing when changed in runtime
<br />* Fixed group image not always updating when is of same size and set in runtime
<br />* Fixed Dispose method when Array is bound to Better ListView
<br />* Fixed ForeColorGroups property serializing to designer code even when having default value
<br />* Fixed background image aligned to bottom/right side being shown under scroll bars</p>
<h3>Changes in version 2.5.1 (Jan 19, 2012)</h3>
<p>* Extended background of combined items (both parent and child items)
<br />
<br />* Fixed link in documentation (chapter "Hit Test")</p>
<h3>Changes in version 2.5.0 (Jan 18, 2012)</h3>
<p>* Added ShowDefaultGroupHeader property
<br />* Added GroupHeaderBehavior property
<br />* Added BetterListViewItem.AllowSelectChildItems property
<br />* Added BetterListViewItem.Selectable property
<br />* Added BetterListViewItem.SelectableItem property
<br />* Added BetterListViewItem.LastAvailableChildItem property
<br />* Added BetterListViewSearchOptions.SelectableItemsOnly to allow searching through selectable items only
<br />* Displayable and selectable item is recognized with hit test (the two can be different because of BetterListViewItem.AllowSelectChildItems)
<br />* 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
<br />* Default font of the group does not get unnecessarily serialized to designer generated code
<br />
<br />* Removed unused property ShowFocusRectangle
<br />
<br />* Fixed possibly obtaining default group instance through BottomGroup or TopGroup properties
<br />* Fixed FindItemsWithText method accepting wrong type of item index
<br />* Fixed content not scrolling horizontally in List view
<br />* Fixed not keeping focused sub-item in same column after Page Down, Home and End (Details view)
<br />* 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)
<br />
<br />Breaking Changes:
<br />
<br />* Item property of BetterListViewHitTestInfo split to ItemDisplay and ItemSelection</p>
<h3>Changes in version 2.4.3 (Jan 11, 2012)</h3>
<p>* Added LabelEditDefaultAccept property
<br />* Added EndEdit method
<br />
<br />* Fixed horizontal scrolling
<br />
<br />Breaking Changes:
<br />
<br />* 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</p>
<h3>Changes in version 2.4.2 (Jan 05, 2012)</h3>
<p>* Fixed vertical scroll bar not showing up
<br />* Fixed accessing disposed back buffer Graphics object after removing control from designer surface
<br />* Fixed links to Index in Better ListView Express Documentation
<br />* Fixed project file of Visual Basic samples for Express edition</p>
<h3>Changes in version 2.4.1 (Dec 28, 2011)</h3>
<p>* Faster initialization when BeginUpdate/EndUpdate not used and the control does not have parent / is invisible
<br />
<br />* Fixed scrolling horizontally when columns exceed width of client area in other views than Details</p>
<h3>Changes in version 2.4.0 (Dec 21, 2011)</h3>
<p>* Added FocusedItemChanged event
<br />
<br />* Added Center layout property to allow change of item centering in Thumbnails and LargeIcon views
<br />
<br />* Added hotkey prefix display support
<br />
<br />* Every column have its own resizing style (BetterListViewColumnHeader.SmoothResize)
<br />
<br />* When a group is clicked, only the group header is scrolled into view (not the entire group)
<br />
<br />* Improved performance of multi-line items
<br />
<br />* Fixed rendering multiline text with custom newlines
<br />
<br />* Fixed group item enumerator
<br />
<br />Breaking Changes:
<br />
<br />* BetterListView.SmoothColumnResize property moved to BetterListViewColumnHeader.SmoothResize</p>
<h3>Changes in version 2.3.3 (Dec 01, 2011)</h3>
<p>* Added ViewChanged event
<br />* Added CheckedItemsChanged event
<br />* Added scrolling to group when clicked
<br />
<br />* Fixed raising CheckItemReorder event raised every time (not only when ItemReorderMode is set to Custom)
<br />* Fixed displaying items when ShowGroups is false and the items are contained in some group in other control
<br />* Fixed problem when setting Image property of sub-item to null after changing view where the sub-item has empty image size
<br />* Fixed behavior of the BetterListViewItem.Checked property setter
<br />* Fixed ItemChecked event raising when Checked or CheckState property of BetterListViewItem changed from user code
<br />* Fixed vertical scroll bar disappearing in Details view when the control was too wide
<br />* Fixed not scrolling to leftmost part of an item in Details view when changing selection
<br />* Fixed rasing SelectedItemsChanged and ItemSelectionChanged events on disposing Better ListView containing selected items
<br />
<br />Breaking Changes:
<br />
<br />* Use CheckedItemsChanged event for handling check state changes of multiple items
<br />* properties CurrentValue, NewValue of ItemCheckedEventArgs renamed to OldCheckState, NewCheckState</p>
<h3>Changes in version 2.3.2 (Nov 24, 2011)</h3>
<p>* Added support for newline characters in text (multi-line text)
<br />* Added BetterListViewSubItemBounds.BoundsImageFrame
<br />* Extended BetterListViewItemComparer
<br />* CheckItemReorder event is raised even when ItemReorderMode is set to Enabled (not only Custom)
<br />* Columns, items and groups get automatically removed from Better ListView when the control is disposed

View File

@@ -0,0 +1,381 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="list view, listview, list view control, list view component, .net list view, list view replacement, list view alternative, improved list view, enhanced list view" />
<meta name="description" content="Better ListView by Component Owl is a .NET WinForms control designed to replace the standard list view control included with C#/VB.net." />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)" />
<meta name="copyright" content="(c) 2010-2018 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>Better ListView .NET control: Improved List View control for C# and VB.NET (Windows Forms)</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="../feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="../comics.rss" />
<link href="../stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="d-page">
<script type="text/javascript">
//<![CDATA[
var t = {"antispam":"capek-rulz","purchase_email":"valid purchase email","valid_email":"a valid email","thanks_for_why_uninstall":"Thank you very much for your feedback!","thank_you":"Thank you!","current_email":"valid current email","thanks_for_subscription":"<div class=\"sent-saved-notice\">Thank You for your subscription!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","message":"message","required":"required","download_in_progress":"Your download should be in progress...","your_full_name":"your full name","order_thanks_for_message":"<div class=\"sent-saved-notice\">Thank you very much for your message!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","thanks_for_message":"Thank you very much for your message!<br /><a href="http://www.componentowl.com/better-listview/\&quot;#\"" onclick=\"send_another(); return false;\">Send Another Message</a>"}
//]]>
</script>
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="../index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="../better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="../better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="../better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="../better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="../better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="../pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="../pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="../pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="../pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="../support.html" class="menu-item">Support</a></li>
<li class=""><a href="../articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="../blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="../comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="../about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="../index.html" class="logoimg"><img alt="Component Owl" src="../images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<input id="tabs-initial-index" name="tabs-initial-index" type="hidden" value="-1" />
<ul id="nav" class="nav">
<li><a href="../better-listview.html" class="">Overview</a></li>
<li><a href="screenshots.html" class="">Screenshots</a></li>
<li><a href="comparison-table.html" class="">Comparison</a></li>
<li><a href="resources.html" class="current">Resources</a></li>
<li><a href="story.html" class="">Story</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail"><p>The setup package that you can download from our website contains more than 20 sample projects with full source code that demonstrate various features. In addition to that, you can also use the following:</p>
<p>
<strong>
<ol class="common">
<li><a href="quick-start-guide.html" onclick="window.open(this.href); return false">Quick Start Guide (Step-by-step)</a></li>
<li><a href="documentation.html" onclick="window.open(this.href); return false">Documentation</a></li>
<li><a href="class-reference.html" onclick="window.open(this.href); return false">Class Reference</a></li>
</ol>
</strong>
</p></div>
</div>
<div class="left">
<div class="buttons-box">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
<p>Version 3.15 / May 27, 2015</p>
</div>
<div class="compatibility">
<p><strong>Seamless integration with .NET 2.0 and higher</strong></p>
<div class="documentation">
<p><a href="quick-start-guide.html" onclick="window.open(this.href); return false">See Quick Start Guide</a></p>
<p><a href="documentation.html" onclick="window.open(this.href); return false">See Documentation</a></p>
<p><a href="class-reference.html" onclick="window.open(this.href); return false">See Class Reference</a></p>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/15/blv-overview_original_1326499754.png?1326474554" class="screenshot" title="Better ListView control"><img alt="Better ListView" src="http://assets.componentowl.com/screenshots/15/blv-overview_thumb_1326499754.png?1326474554" /></a></p>
</div>
<div class="newsletter">
<form action="http://www.componentowl.com/subscriptions" class="new_subscription" id="new_subscription_product" method="post" onsubmit="if (!validate_newsletter_form(this)) return false; jQuery.ajax({data:jQuery.param(jQuery(this).serializeArray()) + '&amp;authenticity_token=' + encodeURIComponent('dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM='), dataType:'script', type:'post', url:'/subscriptions'}); return false;"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM=" /></div> <input id="subscription_subscription_location_id" name="subscription[subscription_location_id]" type="hidden" value="512994065" />
<input id="form_id" name="form_id" type="hidden" value="#new_subscription_product" />
<strong>Receive product updates<br />and news via email:</strong>
<div><input class="email inline-label" id="product-newsletter-email" name="subscription[email]" size="30" type="text" value="Your Email" /></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><input name="subscription[subscription_list_ids][]" type="hidden" value="970100327" />
<input name="subscription[subscription_list_ids][]" type="hidden" value="1009842129" /></div>
<span class="dbtn-c subscribe dbtn-small" id="send"><span class="dbtn-w"><input class="dbtn" name="commit" type="submit" value="Subscribe" /></span></span>
</form></div>
<div class="sharethis-ct">
<strong>Share this page if you like it:</strong>
<div class="sharethis">
<script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=db6a9d0e-5d07-4036-8bed-4959941491f3&amp;type=website&amp;post_services=email%2Cfacebook%2Ctwitter%2Cgbuzz%2Cmyspace%2Cdigg%2Csms%2Cwindows_live%2Cdelicious%2Cstumbleupon%2Creddit%2Cgoogle_bmarks%2Clinkedin%2Cbebo%2Cybuzz%2Cblogger%2Cyahoo_bmarks%2Cmixx%2Ctechnorati%2Cfriendfeed%2Cpropeller%2Cwordpress%2Cnewsvine"></script>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/16/thumbnails_original_1312133021.png?1312107821" class="screenshot" title="Image thumbnails in groups"><img alt="Thumbnails" src="http://assets.componentowl.com/screenshots/16/thumbnails_thumb_1312133021.png?1312107821" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312108013" class="screenshot" title="Items with multi-line text"><img alt="Multi-line Items" src="http://assets.componentowl.com/screenshots/21/multi-line-items_thumb_1312133213.png?1312108013" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_original_1313676477.png?1313651277" class="screenshot" title="Items organized in a tree-like hierarchy"><img alt="Item Hierarchy" src="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_thumb_1313676477.png?1313651277" /></a></p>
</div>
<div class="small-button-ct">
<a href="screenshots.html" class="small-button"><span>More Screenshots</span></a>
</div>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<a href="../betterlistview.exe" class="small-download image-link" onclick="download_email('better-listview');">Free Download</a>
<a href="../pricing-licensing/better-listview.html" class="small-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
</div>
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><a href="../blog.html">Latest From Our Blog</a></h3>
<h4><a href="../blog/index.html%3Fp=927.html">Activation issues and how to solve them</a></h4>
<div class="post-info">Wednesday, 01 March 2017</div>
<h4><a href="../blog/index.html%3Fp=921.html">The Three Main Advantages Better ListView has Over the Classic .NET Framework</a></h4>
<div class="post-info">Thursday, 09 February 2017</div>
<h4><a href="../blog/index.html%3Fp=914.html">BLV and Internet Explorer</a></h4>
<div class="post-info">Sunday, 13 November 2016</div>
<h4><a href="../blog/index.html%3Fp=906.html">Centering Images in Better ListView Sub-items</a></h4>
<div class="post-info">Wednesday, 06 August 2014</div>
<h4><a href="../blog/index.html%3Fp=901.html">Sub-item Check Boxes in Better ListView</a></h4>
<div class="post-info">Sunday, 06 July 2014</div>
</div>
<div class="other-posts"><a href="../blog.html">See more posts &raquo;</a></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><a href="../feeds.rss" class="rss">Subscribe to our RSS</a></li>
<li><a href="http://twitter.com/ComponentOwl" class="twitter">Follow us on twitter</a></li>
</ul>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView Express 3.15 released!</h4>
<p>
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView 3.15 released!</h4>
<p>
<a href="../betterlistview.exe" onclick="download_email('better-listview');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better SplitButton 3.15 released!</h4>
<p>
<a href="../bettersplitbutton.exe" onclick="download_email('better-splitbutton');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better Thumbnail Browser 3.15 released!</h4>
<p>
<a href="../betterthumbnailbrowser.exe" onclick="download_email('better-thumbnail-browser');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item last-item">
<div class="date">08<span>Apr</span></div>
<div class="message">
<h4>Better ListView Express 3.14.0 released!</h4>
<p>
<a href="../better-listview-express/releases%3Fsince=3.14.0.html">See what's new</a>
or
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><div class="social"><a href="../support.html" class="feedback">Contact Us (Feedback)</a> <span>|</span> <a href="../feeds.rss" class="rss">RSS</a> <span>|</span> <a href="http://twitter.com/ComponentOwl" class="twitter">Twitter</a> <span>|</span> <a href="../sitemap.html" class="sitemap">Sitemap</a> <span>|</span> Our <a href="../index.html" class="stdl">task management software</a> that uses Better ListView</div>
Copyright &copy; 2018 ComponentOwl.com, Dextronet.com. All rights reserved. Read our <a href="../eula.html">EULA</a>, <a href="../disclaimer.html">Disclaimer</a> and <a href="../privacy-policy.html">Privacy Policy</a>.<br /></div>
</div>
</div>
</div>
<script src="../javascripts/app_packaged.js%3F1455269826" type="text/javascript"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-16362539-4']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script src="http://load.sumome.com/" data-sumo-site-id="854b5e00f297990012cc230023375a00787c0000216621002775a800d79ad500" async="async"></script>
<!-- Place this tag after the last plusone tag -->
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
</body>
</html>

View File

@@ -0,0 +1,459 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="Better ListView screenshots, Better ListView images, Better ListView images, Better ListView screen shots" />
<meta name="description" content="Screenshots of Better ListView .NET control, showing many features, including better checkboxes, sub-item images, multiple column sort, font and color customization, label editing on sub-items, improved context menus and more." />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="Better ListView Screenshots" />
<meta name="copyright" content="(c) 2010-2018 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>Better ListView Screenshots</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="../feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="../comics.rss" />
<link href="../stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="d-page">
<script type="text/javascript">
//<![CDATA[
var t = {"antispam":"capek-rulz","purchase_email":"valid purchase email","valid_email":"a valid email","thanks_for_why_uninstall":"Thank you very much for your feedback!","thank_you":"Thank you!","current_email":"valid current email","thanks_for_subscription":"<div class=\"sent-saved-notice\">Thank You for your subscription!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","message":"message","required":"required","download_in_progress":"Your download should be in progress...","your_full_name":"your full name","order_thanks_for_message":"<div class=\"sent-saved-notice\">Thank you very much for your message!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","thanks_for_message":"Thank you very much for your message!<br /><a href="http://www.componentowl.com/better-listview/\&quot;#\"" onclick=\"send_another(); return false;\">Send Another Message</a>"}
//]]>
</script>
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="../index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="../better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="../better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="../better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="../better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="../better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="../pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="../pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="../pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="../pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="../support.html" class="menu-item">Support</a></li>
<li class=""><a href="../articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="../blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="../comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="../about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="../index.html" class="logoimg"><img alt="Component Owl" src="../images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<input id="tabs-initial-index" name="tabs-initial-index" type="hidden" value="-1" />
<ul id="nav" class="nav">
<li><a href="../better-listview.html" class="">Overview</a></li>
<li><a href="screenshots.html" class="current">Screenshots</a></li>
<li><a href="comparison-table.html" class="">Comparison</a></li>
<li><a href="resources.html" class="">Resources</a></li>
<li><a href="story.html" class="">Story</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail"><div class="screenshots">
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/15/blv-overview_original_1326499754.png?1326474554" class="screenshot" title="Better ListView control"><img alt="Better ListView" src="http://assets.componentowl.com/screenshots/15/blv-overview_thumb_big_1326499754.png?1326474554" /></a><strong>Better ListView control</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/16/thumbnails_original_1312133021.png?1312107821" class="screenshot" title="Image thumbnails in groups"><img alt="Thumbnails" src="http://assets.componentowl.com/screenshots/16/thumbnails_thumb_big_1312133021.png?1312107821" /></a><strong>Image thumbnails in groups</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312108013" class="screenshot" title="Items with multi-line text"><img alt="Multi-line Items" src="http://assets.componentowl.com/screenshots/21/multi-line-items_thumb_big_1312133213.png?1312108013" /></a><strong>Items with multi-line text</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_original_1313676477.png?1313651277" class="screenshot" title="Items organized in a tree-like hierarchy"><img alt="Item Hierarchy" src="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_thumb_big_1313676477.png?1313651277" /></a><strong>Items organized in a tree-like hierarchy</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/17/groups_original_1312133064.png?1312107864" class="screenshot" title="Items organized in groups"><img alt="Groups" src="http://assets.componentowl.com/screenshots/17/groups_thumb_big_1312133064.png?1312107864" /></a><strong>Items organized in groups</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/20/item-reorder_original_1312133166.png?1312107966" class="screenshot" title="Item reordering in hierarchy"><img alt="Item Reordering" src="http://assets.componentowl.com/screenshots/20/item-reorder_thumb_big_1312133166.png?1312107966" /></a><strong>Item reordering in hierarchy</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/19/column-reorder_original_1312133137.png?1312107937" class="screenshot" title="Column reordering"><img alt="Column Reordering" src="http://assets.componentowl.com/screenshots/19/column-reorder_thumb_big_1312133137.png?1312107937" /></a><strong>Column reordering</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/22/data-binding_original_1312133281.png?1312108081" class="screenshot" title="Binding a DataTable to Better ListView"><img alt="Data Binding" src="http://assets.componentowl.com/screenshots/22/data-binding_thumb_big_1312133281.png?1312108081" /></a><strong>Binding a DataTable to Better ListView</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/23/label-edit_original_1312133326.png?1312108126" class="screenshot" title="Label editing of sub-item date"><img alt="Label Editing" src="http://assets.componentowl.com/screenshots/23/label-edit_thumb_big_1312133326.png?1312108126" /></a><strong>Label editing of sub-item date</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/24/sorting_original_1312133350.png?1312108150" class="screenshot" title="Multi-column sorting"><img alt="Sorting" src="http://assets.componentowl.com/screenshots/24/sorting_thumb_big_1312133350.png?1312108150" /></a><strong>Multi-column sorting</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/25/tooltips_original_1312133393.png?1312108193" class="screenshot" title="Tooltip on custom location"><img alt="Tooltips" src="http://assets.componentowl.com/screenshots/25/tooltips_thumb_big_1312133393.png?1312108193" /></a><strong>Tooltip on custom location</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/26/insertion-mark_original_1312133426.png?1312108226" class="screenshot" title="Customizable insertion mark"><img alt="Insertion Mark" src="http://assets.componentowl.com/screenshots/26/insertion-mark_thumb_big_1312133426.png?1312108226" /></a><strong>Customizable insertion mark</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/27/text-format_original_1312133463.png?1312108263" class="screenshot" title="Various text trimming methods"><img alt="Text Formatting" src="http://assets.componentowl.com/screenshots/27/text-format_thumb_big_1312133463.png?1312108263" /></a><strong>Various text trimming methods</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/28/save-load_original_1312133518.png?1312108318" class="screenshot" title="Content stored in XML format"><img alt="Save/Load Content" src="http://assets.componentowl.com/screenshots/28/save-load_thumb_big_1312133518.png?1312108318" /></a><strong>Content stored in XML format</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/29/searching_original_1312133543.png?1312108343" class="screenshot" title="Advanced item searching"><img alt="Searching" src="http://assets.componentowl.com/screenshots/29/searching_thumb_big_1312133543.png?1312108343" /></a><strong>Advanced item searching</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/33/owner-drawing_original_1312133847.png?1312108647" class="screenshot" title="Owner drawing support"><img alt="Owner Drawing" src="http://assets.componentowl.com/screenshots/33/owner-drawing_thumb_big_1312133847.png?1312108647" /></a><strong>Owner drawing support</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/30/grid-lines_original_1312133570.png?1312108370" class="screenshot" title="Customizable grid lines"><img alt="Grid Lines" src="http://assets.componentowl.com/screenshots/30/grid-lines_thumb_big_1312133570.png?1312108370" /></a><strong>Customizable grid lines</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/31/check-boxes_original_1312133600.png?1312108400" class="screenshot" title="Three state check boxes"><img alt="Check Boxes" src="http://assets.componentowl.com/screenshots/31/check-boxes_thumb_big_1312133600.png?1312108400" /></a><strong>Three state check boxes</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/32/empty-text_original_1312133802.png?1312108602" class="screenshot" title="Display of text on empty control"><img alt="Empty Text" src="http://assets.componentowl.com/screenshots/32/empty-text_thumb_big_1312133802.png?1312108602" /></a><strong>Display of text on empty control</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/39/alignment_original_1340892913.png?1340867713" class="screenshot" title="Text and Image Alignment"><img alt="Text and Image Alignment" src="http://assets.componentowl.com/screenshots/39/alignment_thumb_big_1340892913.png?1340867713" /></a><strong>Text and Image Alignment</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/40/customheight_original_1340892963.png?1340867763" class="screenshot" title="Items of Arbitrary Sizes"><img alt="Items of Arbitrary Sizes" src="http://assets.componentowl.com/screenshots/40/customheight_thumb_big_1340892963.png?1340867763" /></a><strong>Items of Arbitrary Sizes</strong></div>
<div class="even"><a href="http://assets.componentowl.com/screenshots/41/nonselectable_original_1340893198.png?1340867998" class="screenshot" title="Non-selectable Items"><img alt="Non-selectable Items" src="http://assets.componentowl.com/screenshots/41/nonselectable_thumb_big_1340893198.png?1340867998" /></a><strong>Non-selectable Items</strong></div>
</div>
<div class="screenshot-row">
<div class="odd"><a href="http://assets.componentowl.com/screenshots/42/radios_original_1340893228.png?1340868028" class="screenshot" title="Radio Buttons"><img alt="Radio Buttons" src="http://assets.componentowl.com/screenshots/42/radios_thumb_big_1340893228.png?1340868028" /></a><strong>Radio Buttons</strong></div>
</div>
</div></div>
</div>
<div class="left">
<div class="buttons-box">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
<p>Version 3.15 / May 27, 2015</p>
</div>
<div class="compatibility">
<p><strong>Seamless integration with .NET 2.0 and higher</strong></p>
<div class="documentation">
<p><a href="quick-start-guide.html" onclick="window.open(this.href); return false">See Quick Start Guide</a></p>
<p><a href="documentation.html" onclick="window.open(this.href); return false">See Documentation</a></p>
<p><a href="class-reference.html" onclick="window.open(this.href); return false">See Class Reference</a></p>
</div>
</div>
<div class="newsletter">
<form action="http://www.componentowl.com/subscriptions" class="new_subscription" id="new_subscription_product" method="post" onsubmit="if (!validate_newsletter_form(this)) return false; jQuery.ajax({data:jQuery.param(jQuery(this).serializeArray()) + '&amp;authenticity_token=' + encodeURIComponent('dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM='), dataType:'script', type:'post', url:'/subscriptions'}); return false;"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM=" /></div> <input id="subscription_subscription_location_id" name="subscription[subscription_location_id]" type="hidden" value="512994065" />
<input id="form_id" name="form_id" type="hidden" value="#new_subscription_product" />
<strong>Receive product updates<br />and news via email:</strong>
<div><input class="email inline-label" id="product-newsletter-email" name="subscription[email]" size="30" type="text" value="Your Email" /></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><input name="subscription[subscription_list_ids][]" type="hidden" value="970100327" />
<input name="subscription[subscription_list_ids][]" type="hidden" value="1009842129" /></div>
<span class="dbtn-c subscribe dbtn-small" id="send"><span class="dbtn-w"><input class="dbtn" name="commit" type="submit" value="Subscribe" /></span></span>
</form></div>
<div class="sharethis-ct">
<strong>Share this page if you like it:</strong>
<div class="sharethis">
<script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=db6a9d0e-5d07-4036-8bed-4959941491f3&amp;type=website&amp;post_services=email%2Cfacebook%2Ctwitter%2Cgbuzz%2Cmyspace%2Cdigg%2Csms%2Cwindows_live%2Cdelicious%2Cstumbleupon%2Creddit%2Cgoogle_bmarks%2Clinkedin%2Cbebo%2Cybuzz%2Cblogger%2Cyahoo_bmarks%2Cmixx%2Ctechnorati%2Cfriendfeed%2Cpropeller%2Cwordpress%2Cnewsvine"></script>
</div>
</div>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<a href="../betterlistview.exe" class="small-download image-link" onclick="download_email('better-listview');">Free Download</a>
<a href="../pricing-licensing/better-listview.html" class="small-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
</div>
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><a href="../blog.html">Latest From Our Blog</a></h3>
<h4><a href="../blog/index.html%3Fp=927.html">Activation issues and how to solve them</a></h4>
<div class="post-info">Wednesday, 01 March 2017</div>
<h4><a href="../blog/index.html%3Fp=921.html">The Three Main Advantages Better ListView has Over the Classic .NET Framework</a></h4>
<div class="post-info">Thursday, 09 February 2017</div>
<h4><a href="../blog/index.html%3Fp=914.html">BLV and Internet Explorer</a></h4>
<div class="post-info">Sunday, 13 November 2016</div>
<h4><a href="../blog/index.html%3Fp=906.html">Centering Images in Better ListView Sub-items</a></h4>
<div class="post-info">Wednesday, 06 August 2014</div>
<h4><a href="../blog/index.html%3Fp=901.html">Sub-item Check Boxes in Better ListView</a></h4>
<div class="post-info">Sunday, 06 July 2014</div>
</div>
<div class="other-posts"><a href="../blog.html">See more posts &raquo;</a></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><a href="../feeds.rss" class="rss">Subscribe to our RSS</a></li>
<li><a href="http://twitter.com/ComponentOwl" class="twitter">Follow us on twitter</a></li>
</ul>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView Express 3.15 released!</h4>
<p>
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView 3.15 released!</h4>
<p>
<a href="../betterlistview.exe" onclick="download_email('better-listview');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better SplitButton 3.15 released!</h4>
<p>
<a href="../bettersplitbutton.exe" onclick="download_email('better-splitbutton');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better Thumbnail Browser 3.15 released!</h4>
<p>
<a href="../betterthumbnailbrowser.exe" onclick="download_email('better-thumbnail-browser');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item last-item">
<div class="date">08<span>Apr</span></div>
<div class="message">
<h4>Better ListView Express 3.14.0 released!</h4>
<p>
<a href="../better-listview-express/releases%3Fsince=3.14.0.html">See what's new</a>
or
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><div class="social"><a href="../support.html" class="feedback">Contact Us (Feedback)</a> <span>|</span> <a href="../feeds.rss" class="rss">RSS</a> <span>|</span> <a href="http://twitter.com/ComponentOwl" class="twitter">Twitter</a> <span>|</span> <a href="../sitemap.html" class="sitemap">Sitemap</a> <span>|</span> Our <a href="../index.html" class="stdl">task management software</a> that uses Better ListView</div>
Copyright &copy; 2018 ComponentOwl.com, Dextronet.com. All rights reserved. Read our <a href="../eula.html">EULA</a>, <a href="../disclaimer.html">Disclaimer</a> and <a href="../privacy-policy.html">Privacy Policy</a>.<br /></div>
</div>
</div>
</div>
<script src="../javascripts/app_packaged.js%3F1455269826" type="text/javascript"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-16362539-4']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script src="http://load.sumome.com/" data-sumo-site-id="854b5e00f297990012cc230023375a00787c0000216621002775a800d79ad500" async="async"></script>
<!-- Place this tag after the last plusone tag -->
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
</body>
</html>

432
better-listview/story.html Normal file
View File

@@ -0,0 +1,432 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:fb="http://www.facebook.com/2008/fbml" xml:lang="en" lang="en">
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<meta name="keywords" content="Better ListView story, Better ListView history, Better ListView background" />
<meta name="description" content="Learn about the history of the Better ListView control, and the reasons for its development." />
<meta name="author" content="Dextronet" />
<meta http-equiv="Title" content="The story behind Better ListView control" />
<meta name="copyright" content="(c) 2010-2018 Dextronet" />
<meta name="distribution" content="Global" />
<meta name="rating" content="General" />
<meta name="robots" content="All" />
<meta http-equiv="Content-Language" content="en" />
<meta name="verify-v1" content="NK0H1gWia1vxGZ2Yhr59gsS0/P2/USBI1DVA18VkzjM=" />
<meta name="google-site-verification" content="O7Dwtzu5x_Mob9u98uxqpZ-_wCLGpEkx2IL0UYVQ4ac" />
<title>The story behind Better ListView control</title>
<link rel="alternate" type="application/rss+xml" title="Component Owl Feed: Latest releases, news and tips &amp; tricks from our blog" href="../feeds.rss" />
<link rel="alternate" type="application/rss+xml" title="Component Owl's Comics: Latest comic strips for developers by Libor Tinka" href="../comics.rss" />
<link href="../stylesheets/base_packaged.css%3F1455269822.css" media="screen" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="d-page">
<script type="text/javascript">
//<![CDATA[
var t = {"antispam":"capek-rulz","purchase_email":"valid purchase email","valid_email":"a valid email","thanks_for_why_uninstall":"Thank you very much for your feedback!","thank_you":"Thank you!","current_email":"valid current email","thanks_for_subscription":"<div class=\"sent-saved-notice\">Thank You for your subscription!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","message":"message","required":"required","download_in_progress":"Your download should be in progress...","your_full_name":"your full name","order_thanks_for_message":"<div class=\"sent-saved-notice\">Thank you very much for your message!<br /><button type=\"button\" onclick=\"close_fancybox();\">Close</button>","thanks_for_message":"Thank you very much for your message!<br /><a href="http://www.componentowl.com/better-listview/\&quot;#\"" onclick=\"send_another(); return false;\">Send Another Message</a>"}
//]]>
</script>
<div class="d-header d-placing">
<ul class="d-menu">
<li class=""><a href="../index.html" class="menu-item">Home</a></li>
<li class="active with-dropdown">
<a href="../better-listview.html" class="menu-item">Products</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 370px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<div class="dropdown-category">WinForms Components</div>
<a href="../better-listview.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-32-1355160256.png?1355135056" /> Better ListView<br /><span class="subline">Ultimate ListView control for .NET</span></a>
<a href="../better-thumbnail-browser.html" class="featured-item"><img alt="icon" src="http://assets.componentowl.com/icons/better-thumbnail-browser-32-1355160281.png?1355135081" /> Better Thumbnail Browser<br /><span class="subline">Thumbnail loading and browsing control for .NET</span></a>
<a href="../better-splitbutton.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-splitbutton-32-1355160307.png?1355135107" /> Better SplitButton<br /><span class="subline">Free customizable dropdown button control</span></a>
<a href="../better-listview-express.html"><img alt="icon" src="http://assets.componentowl.com/icons/better-listview-express-32-1355160327.png?1355135127" /> Better ListView Express<br /><span class="subline">Free edition with less features</span></a>
</div></div></div></div></div>
</li>
<li class="">
<a href="../pricing-licensing/better-listview.html" class="menu-item">Purchase</a>
<div class="dropdown dropdown-submenu" style="display: none; width: 330px"><div class="outer"><div class="shadowbox"><div class="border"><div class="inner">
<a href="../pricing-licensing/better-listview.html" class="featured-item">Better ListView</a>
<a href="../pricing-licensing/better-thumbnail-browser.html" class="featured-item">Better Thumbnail Browser</a>
<a href="../pricing-licensing/better-splitbutton.html">Better SplitButton</a>
</div></div></div></div></div>
</li>
<li class=""><a href="../support.html" class="menu-item">Support</a></li>
<li class=""><a href="../articles.html" class="menu-item">Articles</a></li>
<li class=""><a href="../blog.html" class="menu-item">Blog</a></li>
<li class=""><a href="../comics/43.html" class="menu-item">Comics</a></li>
<li class=""><a href="../about-us.html" class="menu-item">About Us</a></li>
</ul>
<div class="d-logo">
<a href="../index.html" class="logoimg"><img alt="Component Owl" src="../images/componentowl.gif%3F1455269978" /></a>
<g:plusone size="medium" count="false" href="http://www.componentowl.com"></g:plusone>
</div>
</div>
<div class="d-placing">
<div class="d-content-wrap">
<div class="subpage product-content">
<h1>Better ListView: Alternative list view control for .NET</h1>
<p class="section-info">Ideal .NET WinForms (C#, VB.net) replacement list view component. More features, less limitations, fast and optimized.</p>
<div class="sides">
<div class="right">
<input id="tabs-initial-index" name="tabs-initial-index" type="hidden" value="-1" />
<ul id="nav" class="nav">
<li><a href="../better-listview.html" class="">Overview</a></li>
<li><a href="screenshots.html" class="">Screenshots</a></li>
<li><a href="comparison-table.html" class="">Comparison</a></li>
<li><a href="resources.html" class="">Resources</a></li>
<li><a href="story.html" class="current">Story</a></li>
</ul>
<div id="nav-panel" class="nav-panel product-detail"><h2>The story behind Better Listview</h2>
<p>Hi, my name is Jiri Novotny and I'm the founder of <a href="http://www.dextronet.com" target="_blank">Dextronet.com</a>, a software company that operates ComponentOwl.com. Me and my team think of ourselves as independent software vendors (or ISVs).</p>
<p>Surprise surprise - as it is with most independent components today, we did not originally actually intended to create Better ListView.</p>
<p>Our flagship product is <a href="http://www.dextronet.com/swift-to-do-list-software" target="_blank">Swift To-Do List</a>, a desktop task management software. The old version of Swift To-Do List has been written in Visual Basic 6 which has many limitations, so we've decided to make a total rewrite in VB.NET and C#. The development started in July 2009.</p>
<p>Because Swift To-Do List is highly list-centric product (as the name suggests :-), it soon become apparent that we will need excellent ListView control. The ListView control included in .NET just didn't cut it. Not only its features are very limited, but there are braincracking bugs and strange behavior in lots of cases. In fact, the default .NET ListView was so bad, that I've oftentimes wished I could just use the ListView included in VB6 it has at least behaved mostly correctly.</p>
<p>So, because we couldn't use the default .NET ListView, I began searching for a replacement ListView control. My requirements were actually not very demanding - I wanted a ListView control that looked and behaved similarly as the one used in Windows Explorer. </p>
<p>Unfortunately, I've soon discovered that in reality, I want lots of things that are not taken for granted in any ListView control that I've found. My requirements for a usable .NET ListView control are:</p>
<ul class="common">
<li>It must either inherit from native ListView or mimick it perfectly</li>
<li>It must use system theme seamlessly and not have some weird inconsistent custom look</li>
<li>It must support sub-item images flawlessly</li>
<li>It must have excellent drag &amp; drop support for item reordering</li>
<li>It must have perfect implementation of selection and drag-selection</li>
<li>It must support 3 different context menus: For items, column headers, and empty space</li>
<li>Multi-column sort</li>
<li>Must not be part of some huge control pack that I need to bundle with my app</li>
<li>Must be light-weight, fast and optimized</li>
<li>Must have all bugs and strange behavior of .NET ListView fixed</li>
</ul>
<p>There was also lot of nice-to-have things that I've looked for, like:</p>
<ul class="common">
<li>Watermark text that is shown when the ListView is empty</li>
<li>Column reordering with auto-scrolling</li>
<li>100% managed code</li>
<li>Better hit-test</li>
</ul>
<p>I did not want to use any DataGrid-based control, as it can't really replace ListView control it is much harder to manipulate for the user in most cases, and it doesn't support many things that ListView does. </p>
<p>Swift To-Do List is a mass-market product, so it needed a ListView control that behaved as expected in all cases, no exceptions. The ListView control used in Windows Explorer is a great model: Because every user knows how to work with Windows Explorer ListView already, you can leverage that knowledge in your own applications. Your applications will be truly easy to use and learn.</p>
<p>I've looked over dozen of ListView controls and I'm not afraid to name them, because they just don't meet the above criteria. The controls I looked over included ListView from SoftGroup, three different open source ListView controls from CodeProject, ListView from Lidor systems, Grid and TreeView-Grid hybrid from DevExpres, WinListView from Infragistics, I've also looked at all ListView controls to be found at CodeGuru and more basically everything that I could Google and everything from all well-known (or not so well known) component providers.</p>
<p>I was disappointed with every single of these controls. Not one of them met my criteria.</p>
<p>Believe me, I <em>wanted</em> to find the perfect ListView control after all, I desperately needed it so we could use it in our own product. But what I've found during my extensive research? Nothing. Null. Nilch. Nada. Zero. My heart was broken. The dreams of our awesome <a href="http://www.dextronet.com/swift-to-do-list-software" target="_blank">Swift To-Do List 7</a> product started to shatter, because we needed an adequate ListView control first. When it comes to user experience, we simply couldn't settle for anything less than great.</p>
<p>But we haven't given up. The solution? To create our own ListView control. A Better ListView control. It was not originally intended to be a product on it's own, but when it has been finished, it was so good that it would be a sin to keep it selfishly just for ourselves. So we've started selling it. :-)</p>
<p>When we started building our own better ListView control, we wanted it to inherit from System.Windows.Forms.ListView at first. We've tried our best, but some of the bugs of .NET ListView were simply impossible to fix, even with ridiculous hacks. However, luck has shined upon us. </p>
<p>We've met Libor Tinka, a genius C# developer with extensive experience with not just programming in general, but specifically Windows control development as well. He's the author and sole developer of ImagingShop, a powerful digital photography processing desktop application that includes many of his custom controls, and lot's of hardcore mathematics and unique algorithms (It has over 220k lines of code in total!). That guy <strong>really</strong> is a genius and let me tell you, the code he writes is just beautiful. He's an artist.</p>
<p>When we've asked Libor to create a better ListView control for us, he accepted the challenge. </p>
<p>(By the way, it might look easy at first, but implementing your own ListView control is extremely difficult, daunting and complicated task there are so many corner cases in the control's behavior that it will make your brain want run away.)</p>
<p>We've worked very closely with Libor during the intensive development process. Fast forward 12 months into the future - Better ListView is done, and Libor is an integral part of our team. We still work together as we support and constantly enhance Better Listview.</p>
<p>Better ListView is now used not just in Swift To-Do List, but also in Libor's own product <a href="http://www.imagingshop.com">ImagingShop</a>, so we are truly eating our own dog food. This is your <strong>guarantee</strong> that we will <strong>not</strong> stop supporting Better ListView, fixing bugs and implementing new features it's the <strong>core</strong> and <strong>heart</strong> of our own desktop software products after all. We walk the talk.</p>
<p>If Better ListView existed before, I know I would be absolutely positively <strong>thrilled</strong> about it. And so I hope that you are thrilled about it now that you've found it.</p>
<p>Any questions or comments? I would love to get them. Contact me at <span class="emil">novotny (at) dextronet (dot) com</span></div>
</div>
<div class="left">
<div class="buttons-box">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
<p>Version 3.15 / May 27, 2015</p>
</div>
<div class="compatibility">
<p><strong>Seamless integration with .NET 2.0 and higher</strong></p>
<div class="documentation">
<p><a href="quick-start-guide.html" onclick="window.open(this.href); return false">See Quick Start Guide</a></p>
<p><a href="documentation.html" onclick="window.open(this.href); return false">See Documentation</a></p>
<p><a href="class-reference.html" onclick="window.open(this.href); return false">See Class Reference</a></p>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/15/blv-overview_original_1326499754.png?1326474554" class="screenshot" title="Better ListView control"><img alt="Better ListView" src="http://assets.componentowl.com/screenshots/15/blv-overview_thumb_1326499754.png?1326474554" /></a></p>
</div>
<div class="newsletter">
<form action="http://www.componentowl.com/subscriptions" class="new_subscription" id="new_subscription_product" method="post" onsubmit="if (!validate_newsletter_form(this)) return false; jQuery.ajax({data:jQuery.param(jQuery(this).serializeArray()) + '&amp;authenticity_token=' + encodeURIComponent('dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM='), dataType:'script', type:'post', url:'/subscriptions'}); return false;"><div style="margin:0;padding:0;display:inline"><input name="authenticity_token" type="hidden" value="dJeFtbWrARc0arEomU+SG+XtypwJr2F4Kc9v14woStM=" /></div> <input id="subscription_subscription_location_id" name="subscription[subscription_location_id]" type="hidden" value="512994065" />
<input id="form_id" name="form_id" type="hidden" value="#new_subscription_product" />
<strong>Receive product updates<br />and news via email:</strong>
<div><input class="email inline-label" id="product-newsletter-email" name="subscription[email]" size="30" type="text" value="Your Email" /></div>
<div id="product-newsleter-lists" class="subscription-lists-ct" style="display: none"><input name="subscription[subscription_list_ids][]" type="hidden" value="970100327" />
<input name="subscription[subscription_list_ids][]" type="hidden" value="1009842129" /></div>
<span class="dbtn-c subscribe dbtn-small" id="send"><span class="dbtn-w"><input class="dbtn" name="commit" type="submit" value="Subscribe" /></span></span>
</form></div>
<div class="sharethis-ct">
<strong>Share this page if you like it:</strong>
<div class="sharethis">
<script type="text/javascript" src="http://w.sharethis.com/button/sharethis.js#publisher=db6a9d0e-5d07-4036-8bed-4959941491f3&amp;type=website&amp;post_services=email%2Cfacebook%2Ctwitter%2Cgbuzz%2Cmyspace%2Cdigg%2Csms%2Cwindows_live%2Cdelicious%2Cstumbleupon%2Creddit%2Cgoogle_bmarks%2Clinkedin%2Cbebo%2Cybuzz%2Cblogger%2Cyahoo_bmarks%2Cmixx%2Ctechnorati%2Cfriendfeed%2Cpropeller%2Cwordpress%2Cnewsvine"></script>
</div>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/16/thumbnails_original_1312133021.png?1312107821" class="screenshot" title="Image thumbnails in groups"><img alt="Thumbnails" src="http://assets.componentowl.com/screenshots/16/thumbnails_thumb_1312133021.png?1312107821" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/21/multi-line-items_original_1312133213.png?1312108013" class="screenshot" title="Items with multi-line text"><img alt="Multi-line Items" src="http://assets.componentowl.com/screenshots/21/multi-line-items_thumb_1312133213.png?1312108013" /></a></p>
</div>
<div class="screenshot">
<p><a href="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_original_1313676477.png?1313651277" class="screenshot" title="Items organized in a tree-like hierarchy"><img alt="Item Hierarchy" src="http://assets.componentowl.com/screenshots/18/betterlistview-tree-hierarchy_thumb_1313676477.png?1313651277" /></a></p>
</div>
<div class="small-button-ct">
<a href="screenshots.html" class="small-button"><span>More Screenshots</span></a>
</div>
</div>
</div>
<div class="buttons-wrap">
<div class="buttons">
<a href="../betterlistview.exe" class="standard-download image-link" onclick="download_email('better-listview');">Download Free Trial - With sample projects</a>
<a href="../pricing-licensing/better-listview.html" class="standard-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
<div id="screenshot-buttons" style="display: none">
<div class="buttons">
<a href="../betterlistview.exe" class="small-download image-link" onclick="download_email('better-listview');">Free Download</a>
<a href="../pricing-licensing/better-listview.html" class="small-buy image-link">See Pricing &amp; Licensing</a>
</div>
</div>
</div>
</div>
<div class="d-footer">
<div class="d-placing">
<div class="left">
<div class="latest-posts">
<h3 class="latest_from_blog"><a href="../blog.html">Latest From Our Blog</a></h3>
<h4><a href="../blog/index.html%3Fp=927.html">Activation issues and how to solve them</a></h4>
<div class="post-info">Wednesday, 01 March 2017</div>
<h4><a href="../blog/index.html%3Fp=921.html">The Three Main Advantages Better ListView has Over the Classic .NET Framework</a></h4>
<div class="post-info">Thursday, 09 February 2017</div>
<h4><a href="../blog/index.html%3Fp=914.html">BLV and Internet Explorer</a></h4>
<div class="post-info">Sunday, 13 November 2016</div>
<h4><a href="../blog/index.html%3Fp=906.html">Centering Images in Better ListView Sub-items</a></h4>
<div class="post-info">Wednesday, 06 August 2014</div>
<h4><a href="../blog/index.html%3Fp=901.html">Sub-item Check Boxes in Better ListView</a></h4>
<div class="post-info">Sunday, 06 July 2014</div>
</div>
<div class="other-posts"><a href="../blog.html">See more posts &raquo;</a></div>
</div>
<div class="right">
<div class="news">
<ul class="links">
<li><a href="../feeds.rss" class="rss">Subscribe to our RSS</a></li>
<li><a href="http://twitter.com/ComponentOwl" class="twitter">Follow us on twitter</a></li>
</ul>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView Express 3.15 released!</h4>
<p>
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better ListView 3.15 released!</h4>
<p>
<a href="../betterlistview.exe" onclick="download_email('better-listview');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better SplitButton 3.15 released!</h4>
<p>
<a href="../bettersplitbutton.exe" onclick="download_email('better-splitbutton');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item ">
<div class="date">27<span>May</span></div>
<div class="message">
<h4>Better Thumbnail Browser 3.15 released!</h4>
<p>
<a href="../betterthumbnailbrowser.exe" onclick="download_email('better-thumbnail-browser');">Download latest release</a>
</p>
</div>
</div>
<div class="news-item last-item">
<div class="date">08<span>Apr</span></div>
<div class="message">
<h4>Better ListView Express 3.14.0 released!</h4>
<p>
<a href="../better-listview-express/releases%3Fsince=3.14.0.html">See what's new</a>
or
<a href="../betterlistviewexpress.exe" onclick="download_email('better-listview-express');">Download latest release</a>
</p>
</div>
</div>
</div>
</div>
</div>
<div class="d-placing">
<hr />
<div class="copy"><div class="social"><a href="../support.html" class="feedback">Contact Us (Feedback)</a> <span>|</span> <a href="../feeds.rss" class="rss">RSS</a> <span>|</span> <a href="http://twitter.com/ComponentOwl" class="twitter">Twitter</a> <span>|</span> <a href="../sitemap.html" class="sitemap">Sitemap</a> <span>|</span> Our <a href="../index.html" class="stdl">task management software</a> that uses Better ListView</div>
Copyright &copy; 2018 ComponentOwl.com, Dextronet.com. All rights reserved. Read our <a href="../eula.html">EULA</a>, <a href="../disclaimer.html">Disclaimer</a> and <a href="../privacy-policy.html">Privacy Policy</a>.<br /></div>
</div>
</div>
</div>
<script src="../javascripts/app_packaged.js%3F1455269826" type="text/javascript"></script>
<script type="text/javascript">
var _gaq = _gaq || [];
_gaq.push(['_setAccount', 'UA-16362539-4']);
_gaq.push(['_trackPageview']);
(function() {
var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
})();
</script>
<script src="http://load.sumome.com/" data-sumo-site-id="854b5e00f297990012cc230023375a00787c0000216621002775a800d79ad500" async="async"></script>
<!-- Place this tag after the last plusone tag -->
<script type="text/javascript">
(function() {
var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true;
po.src = 'https://apis.google.com/js/plusone.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s);
})();
</script>
</body>
</html>