Мой .NET немного заржавел, но вы могли бы создать отдельный подкласс TreeNodeCollection и, возможно, TreeNode, дать им доступ к вашей структуре, назначить вашу TreeNodeCollection свойству Nodes TreeViewControl.
Оболочка TreeNodeCollection преобразует вашу структуру в структуру TreeViewControl. Класс TreeNode, вероятно, будет содержать ссылку на ваши собственные узлы, но преобразует ваши узлы в TreeNodes.
Другими словами, реализуя эти два интерфейса, вы адаптируете интерфейс вашей модели к тому, который использует TreeViewControl,
Если вы используете шаблон Visitor для создания параллельной структуры, вам придется запускать ее каждый раз, когда происходят изменения. Или вам все равно придется обернуть свой узел интерфейсом TreeNode.
См. Схема адаптера