winzip icon

cADOTreeView (Initial Beta Release)

Submitted on: 2/2/2015 2:35:00 PM
By: Slider (from psc cd)  
Level: Intermediate
User Rating: By 43 Users
Compatibility: VB 6.0
Views: 3262
     TreeView control is one of the most overlooked controls by developers for use in database applications to display picklists. This is mainly due to the lack of data binding and time required to code. This wrapper does it for you! It simplifies the display of complex data relationships using ADO and the TreeView control. I've made it as generic and flexible as possible whilst significatly improving loading performance over manually coded methods. Features include:- --- Loading records on an "as-needed" basis when Nodes are expanded (includes optional control over the expanding of Nodes) - significatly reduces load time. --- Simple and complex data relationships with support for:- a). recursive record linking; b). many-2-one data relationships; c). one record can be displayed multiple times - each instance of the same record can be fully customised i.e. different images, colors, etc...; d). unlimited data relationships and nesting levels. --- "A pictures is worth a thousand words!" - color coded ranges; Images as warning indicators; color coded regions, etc... Built-in automatic support for customisation of *ALL* Node display properties on a "Per Record" basis - NO MANUAL CODING REQUIRED! (Does not use the .Tag property of each Node - does anyone want this property automatically filled?) --- User defined sorting - uses the SQL "ORDER BY" clause instead of each Node's .Sort property --- Custom filter criterias --- Persistance of data relationships (with associated icons). This gives several benefits: - a). the defined relationship is portable and can be stored in the registry, as a resource, record in the database, or to disk (in-built function); b). Bind your database to the treeview control with only 3 lines of code when using a persisted data relationship! c). Can copy any part (or all) of data relationships between different instances using the .Contents property; d). any modification to icons or filtering can be persisted allowing progmatic or user customisation between sessions &/or applications, users, etc... o ... Load-on-Demand (using its own wrapper class) is exposed for use with other non-ADO bound TreeView Controls within your application. It's very easy to Use the wrapper - Define a data relationship, point to the Database, and then the wrapper will do the rest. The zip file includes: all source codes, VBADOTree.Dll, Five (6) demonstration applications ranging from simple implementation of the Load-on-demand feature (non-ADO Demo) through to a complex inter-table relationship (9 tables) with recursive data structures, custom filter criterias, non-alphanumeric (custom user-defined) sorting, and conditional node properties. Both the Wrapper DLL and demonstration applications are fully commented. Demonstration applications also include very detailed comments and notes on how the data binding and automatic SQL building actually works. This should make implementation in your own projects very easy.

winzip iconDownload code

Note: Due to the size or complexity of this submission, the author has submitted it as a .zip file to shorten your download time. Afterdownloading it, you will need a program like Winzip to decompress it.Virus note:All files are scanned once-a-day by Planet Source Code for viruses, but new viruses come out every day, so no prevention program can catch 100% of them. For your own safety, please:
  1. Re-scan downloaded files using your personal virus checker before using it.
  2. NEVER, EVER run compiled files (.exe's, .ocx's, .dll's etc.)--only run source code.
  3. Scan the source code with Minnow's Project Scanner

If you don't have a virus scanner, you can get one at many places on the net

Other 18 submission(s) by this author


Report Bad Submission
Use this form to tell us if this entry should be deleted (i.e contains no code, is a virus, etc.).
This submission should be removed because:

Your Vote

What do you think of this code (in the Intermediate category)?
(The code with your highest vote will win this month's coding contest!)
Excellent  Good  Average  Below Average  Poor (See voting log ...)

Other User Comments

 There are no comments on this submission.

Add Your Feedback
Your feedback will be posted below and an email sent to the author. Please remember that the author was kind enough to share this with you, so any criticisms must be stated politely, or they will be deleted. (For feedback not related to this particular code, please click here instead.)

To post feedback, first please login.