Download Notes
WinControls.ListView.Components
- Components only for those of you who don't want to mess around
WinControls.TreeListView
- Source Code for the control
WinControls.TreeListViewSample
- Sample project using the new control
Introduction/Background
I actually started this code about four years ago when I needed a ListView
/TreeListView
combination control for a project I was working on. I soon discovered Jon Rista's article (listed below) here on CodeProject and I was off and running. I felt I could build upon his initial idea and with a little help from what others have written (also listed below) and my own ideas, I started it. Unfortunately, the project I was on folded but not the control itself. I continued the work and have been working on it here and there and now have finally gotten around to putting it on CodeProject.
I hope you all find this control useful. Invariably there will be issues, errors or better ways to do things when coding is involved. I am always open to new ideas and designs on my code so don't be afraid to let me know about it. If anyone has any issues, ideas or critiques you can post on the message board and hopefully I'll get to it ASAP.
Control Highlights
- Comes with a fully documented help file generated by SandCastle (Sandcastle .shfb file included in project for future development)
- Code is fully commented for Intellisense support
- Full Design-Time support (including Columns - just click on them in the IDE)
- Default Drag-n-Drop functionality built in (just turn it on)
- Default sorting
- Default folder images if you don't add your own
- Icon support for columns
Checkbox
/RadioButton
support for the ContainerListView
and TreeListView
- Ability to show/hide individual
Checkboxes
/RadioButtons
- Ability to enable/disable individual
CheckBoxes
/RadioButtons
- Hidden columns
- Column/Row Tracking
- Export the control to XML and import it back in
- Export the entire control or just the nodes
GridLine
functionality for the ContainerListView
and TreeListView
controls
- Separate
ContextMenu
for the Columns
- On the fly support for editing individual
ContainerListViewItems
, ContainerListViewSubItems
, and TreeListNodes
- Support for changing the color of multiple properties of both controls, including
GridLines
, RootLines
, Highlight color, etc...
- Ability to show/hide
RootLines
, ChildLines
, GridLines
and PlusMinus
signs
- Adding controls to
ContainerListViewSubItems
- Alpha support for colors
FullPath
support for TreeListNodes
so you know where you are in the tree
- Ability to change the
Path
character when getting the FullPath
of a TreeListNode
- Branching functionality for
TreeListNodes
which means you can highlight, color, select, disable, etc.. a subset of nodes/childnodes in a Tree
- and much, much more!
Other Notes
- Properties that are only stubbed out for future development will have 'Not Supported' in the designer and intellisense.
- You may have to remove the source control bindings and files from the code.
- The solutions have been ported over to Visual Studio 2008. However, the target framework is the .NET 2.0 Framework so you could port the code back to Visual Studio 2005 with no problems if necessary.
- Extract the sample project to the same directory as the source project as the sample project references the source project. Otherwise, you will have to re-reference the source project.
Thank-You's
History
- 10th June, 2008: Initial post