Дублирование подузлов Telerik C#C#

Место общения программистов C#
Ответить
Гость
 Дублирование подузлов Telerik C#

Сообщение Гость »


Я пытаюсь получить подузлы маршрута, мне это удается, но дубликаты генерируются столько раз, сколько раз выполняется foreach. Думаю, как мне решить эту проблему?

Private void AgregarSubnodos(RadTreeNode родительский узел, строка ковраПадре) { пытаться { // Отменить соединение с SQL строка cadenaConexionSQL = Global.GeneraConexionSQL(); Соединение SqlConnection = новый SqlConnection (cadenaConexionSQL); соединение.Открыть(); // Получение подковеров-падре string[] subCarpetas = Directory.GetDirectories(carpetaPadre); foreach (строка subCarpeta в subCarpetas) { строка cadenaSQL = "ВЫБРАТЬ ковровое_нодо ИЗ SEG_NODOS ГДЕ ковровое_нодо НРАВИТСЯ '" + subCarpeta + "%'"; строка mensajeVuelta = ""; SqlDataReader dataReaderNodos; dataReaderNodos = Global.EjecutaComandoReaderSQL(cadenaConexionSQL, cadenaSQL, ref mensajeVuelta); если (dataReaderNodos.HasRows) { пока (dataReaderNodos.Read()) { // Получаем имя папки текущей строки чтения данных строка nombreCarpeta = dataReaderNodos.GetString(0); // Создаем новый узел для подпапки Подузел RadTreeNode = новый RadTreeNode(); subNode.Text = Path.GetFileName(subCarpeta); subNode.Tag = subCarpeta; // Источник узла subNode.Font = new System.Drawing.Font("Segoe UI", 11F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0))); // Добавляем узел как подузел родительского узла родительскийУзел.Узлы.Добавить(подузел); // Рекурсивно добавляем подузлы для текущей подпапки AgregarSubnodos(subNode, subCarpeta); } } dataReaderNodos.Close(); } соединение.Закрыть(); } поймать (UnauthorizedAccessException) { } поймать (Исключение ex) { Global.SuperLog("Ошибка в объединении подузлов: " + ex.Message); } } вот что вы видите в дереве, узлы дублируются


Изображение

Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»