Hello Xojo community!
I’ve just released a new open-source project on GitHub that I think many of you will find useful — especially if you’re working with hierarchical data or want to integrate a TreeView-style UI into your desktop applications.
Github Repository : Xojo-TreeView-Hierarchical-Listbox
This project is a reusable module that demonstrates how to create and manage a hierarchical Listbox (TreeView-style) in Xojo. It was built with two goals in mind:
- Educational: To help developers understand how to work with nested structures and hierarchical UI in Xojo.
- Practical: To provide a ready-to-integrate module that you can drop into your own projects and save a lot of development time.
Features :
- Add, rename, and delete nodes dynamically
- Virtually unlimited depth (nest as deep as you want!)
- Each node can display its own emoji icon
- Includes a working example with SQLite persistence
- Clean and modular design, easy to plug into existing apps
- Fully open-source (MIT License)
How to Get Involved
- Download it and try it out
- Use it in your own projects
- Give feedback, open issues, suggest improvements
- Contribute with pull requests if you want to enhance the module
- Or simply join the discussion — I’d love to hear how you would use it or what you’d add!
Thanks for reading — and I hope this module helps make your next Xojo project just a little bit easier
Made with Xojo 2025R1.
15 Likes
nice ! did you manage the row drag-reorder, which is the most difficult part in a hierarchical listbox ?
Not yet — but that’s definitely something I plan to implement in a future update!
Downloaded it, ran it, selected the sqiite file and nothing happens.
Thanks for him Beatrix. In French we have an expression which says "C’est comme le Port-Salut, c’est écrit dessus ", but that’s untranslatable you’ll never understand unless you have a very large dose of humor 
The French expression “C’est comme le Port-Salut, c’est écrit dessus” translates to “It’s like Port-Salut, it’s written on it.”
It refers to something that is obvious or clearly stated—something you just need to look at to understand.
The phrase comes from the French cheese Port-Salut, which had its name prominently displayed on the packaging, along with an advertising slogan saying exactly that.
Over time, this slogan became a humorous way to point out when something is self-evident or clearly marked.
3 Likes
here, it could also translate to RTFM…
2 Likes
OK I tested it. Some remarks: if you create a new node on the same level, the previous entry shows a plus sign after the same level node is created. Same with a new node on a lower hierarchical level. The new node shows a plus sign, which indicates there is a nested level, but there isn’t.
Ps: I see now that a new node on the same level is created above the original node and not below, what one expects.