Изменить индекс TreeListNode (позиция) в элементе управления DevExpree TreeList - PullRequest
0 голосов
/ 22 ноября 2010

Я использую DevExpree XtraTreeList Control, я хочу произвольно установить один из узлов первого уровня в качестве первого узла в Дереве, ничего полезного не показано ни в методах элемента управления TreeList, ни в методах TreeListNode,

Пожалуйста, дайте совет.

Редактировать: Мой код

 private void btnSetMaster_ButtonClick(object sender, DevExpress.XtraEditors.Controls.ButtonPressedEventArgs e)
        {
            //Load reprot
            if (treeLstRprtDS.FocusedNode != null)
            {
                treeLstRprtDS.SetNodeIndex(treeLstRprtDS.FocusedNode,0);
                //Get selected underlying object
                ReportDataSource rprtDataSourceSelected =
                    (ReportDataSource)treeLstRprtDS.GetDataRecordByNode(treeLstRprtDS.FocusedNode);
                theReport.SetReportDataSourceAsMaster(rprtDataSourceSelected);
            }
        }

Edit:

Примечание: работает в связанном режиме


Решение:

Я реализовал событие CompareNodeValues ​​для элемента управления XtrTreeList Читайте здесь ...

и затем заставил дерево выполнить сортировку с помощью Column.SortIndex Читать здесь ...

Ответы [ 2 ]

0 голосов
/ 22 ноября 2010

Вы хотите прокрутить TreeList, чтобы определенный узел был верхним?Если это так, используйте свойство TreeList TopVisibleNodeIndex .Если вам нужен определенный узел первым, вы должны отсортировать TreeList в его CompareNodeValues ​​ обработчике событий.

0 голосов
/ 22 ноября 2010

Звучит так, как будто вы ищете SetNodeIndex метод .

...