I completely separated the CSS and used jQuery to add styles, just for multi-level coloring. It is also easy to generate directory trees and control styles, and there is no need to consider styles when generating. It is recommended that the data table be sorted by Order in advance instead of sorting hierarchically when reading the data. This will provide better performance.
I made it into a .Net control. As a lightweight infinite directory tree, it is quite easy to use. It's just not perfect yet, I'll modify it slowly first, and then publish it when it's almost ready.