private ЭлементДерева аскрытьАдрес(ЭлементДерева Элемент) { Дерево.CollapseAll(); ТекущийАдрес = Элемент.Адрес; Элемент.Ветвь.Expand(); return(Элемент); }
private void УдалитьНаЭкране(ЭлементДерева Элемент) { if (Элемент.Ветвь != null) { Элемент.Ветвь.Remove(); } Элемент.Ветвь = null; Дерево.Update(); }
private void ЗаполнитьСобранноеДерево() { Дерево.Focus(); Дерево.Nodes.Clear(); foreach (var Строка in ПолноеДерево) { if (!Строка.ЭтоКорень) { Дерево.Nodes.Add(Строка.ToString()); } } }
private void ЗаполнитьПолноеДерево_ВПамяти() { Дерево.Focus(); Дерево.Nodes.Clear(); TreeNode КореньАдрес = null; ЭлементДерева ВыбранаСтрока = null; ЭлементДерева Корень = null; ПолноеДерево.Clear(); Дерево.CollapseAll(); foreach (var Строка in Последовательность.ОтветСервера) { if (Строка[0] == "ЗавершитьЗагрузкуДанных") { break; } if (Строка[0] == "ДобавитьКорень") { Корень = new ЭлементДерева(КореньАдрес, Строка[1], Строка[2]); ПолноеДерево.Add(Корень); if ((Строка.Count() == 4 && Строка[3] == "Раскрыть")) { ТекущийАдрес = Строка[1]; } continue; } if (Корень != null) { //root , СтрокаСТоваром, Адрес, EAN , "" , GUID, Код, Наименование,int КоличествоСобрано,int КоличествоТребуется, int КоличествоОстаток, ЭлементДерева Элемент = new ЭлементДерева(false, null, Корень.Адрес, Строка[0], Строка[1], Строка[2], Строка[3], Строка[4], Строка[5], Строка[6], Строка[7]); if (Строка.Count() > 8 && Строка[8] == "Выбрать") { ВыбранаСтрока = Элемент; } ЗаполнитьОстальныеEAN(Строка, Элемент); ПолноеДерево.Add(Элемент); continue; } } ЗаполнитьДеревоНаЭкране(); if (ВыбранаСтрока != null) { Дерево.SelectedNode = ВыбранаСтрока.Ветвь; } }
private void ЗаполнитьДерево() { Дерево.Focus(); Дерево.Nodes.Clear(); TreeNode КореньАдрес = null; TreeNode ВыбранаСтрока = null; ЭлементДерева Корень = null; Дерево.CollapseAll(); foreach (var Строка in Последовательность.ОтветСервера) { if (Строка[0] == "ЗавершитьЗагрузкуДанных") { break; } if (Строка[0] == "ДобавитьКорень") { ДобавитьАдрес(ref КореньАдрес, ref Корень, Строка); continue; } if (КореньАдрес != null) { ВыбранаСтрока = ДобавитьТовар(КореньАдрес, ВыбранаСтрока, Корень, Строка); continue; } } if (КореньАдрес != null) { Дерево.Nodes.Add(КореньАдрес); } if (ВыбранаСтрока != null) { Дерево.SelectedNode = ВыбранаСтрока; } }
private void ОбновитьДерево(string filter) { Дерево.BeginInit(); var cv = (CollectionView)CollectionViewSource.GetDefaultView(СписокТипов); if (cv != null) { cv.GroupDescriptions.Clear(); cv.SortDescriptions.Clear(); cv.Filter = new Predicate <object>(delegate(object obj) { var item = obj as RosService.Configuration.Type; if (item == null) { return(false); } return(item.Описание.ToLower().Contains(Convert.ToString(filter).ToLower())); }); cv.SortDescriptions.Add(new SortDescription("Namespace", ListSortDirection.Ascending)); cv.SortDescriptions.Add(new SortDescription("Описание", ListSortDirection.Ascending)); cv.GroupDescriptions.Add(new PropertyGroupDescription("Namespace")); Дерево.ItemsSource = cv.Groups.Cast <CollectionViewGroup>().Select(p => new RosControl.UI.TreeViewItem() { Header = p.Name, IconType = 270, IsExpanded = !string.IsNullOrEmpty(filter), ItemsSource = p.Items.Cast <RosService.Configuration.Type>().Select(g => new RosControl.UI.TreeViewItem() { Header = g.Описание, IconType = g.Name, Tag = g.Name }) }); } Дерево.EndInit(); }