Я разработал приложение, которое заполняет древовидное представление из иерархических данных в базе данных.
Я разработал его для использования отложенной загрузки, чтобы он получал дочерние узлы только при расширении узла.
Моя проблема в том, что, очевидно, я не знаю, есть ли у узла дочерние элементы, если я не вызову базу данных и не посмотрю. В настоящее время я реализовал фиктивный дочерний узел, поэтому значок [+] отображается для всех узлов, затем я удаляю этот фиктивный узел и получаю реальные дочерние узлы в событии BeforeExpand
.
Это означает, что я получаю значок [+] для узлов, у которых нет дочерних узлов, поэтому пользователь щелкает по значку раскрытия, и нет ничего, что выглядит немного скучно.
Каков преферрированный метод для обработки дочерних узлов в виде дерева с отложенной загрузкой? Если я сделаю вызов в базу данных, чтобы выяснить, есть ли дочерние узлы, я мог бы просто загрузить дочерние узлы и забыть о отложенной загрузке, верно?
Одна мысль, которая у меня была, заключалась в том, чтобы сохранить флаг 'HasChildren' в базе данных, чтобы я мог выборочно создавать свой фиктивный дочерний узел только для узлов, которые на самом деле делают дочерними узлами.
Извините за то, что я болтал, мне очень интересно посмотреть, что думают другие люди ...