private void GenerateVirtualListItems(TreeListItemCollection items) { for (var i = 0; i < items.Count; i++) { var vitem = new VirtualTreeListItem(items[i], _virtualList.Count); items[i].DataIndex = (++_rowNumberIndex); _virtualList.Add(vitem); if (items[i].Selected) { _treeList.SelectedItems.Add(items[i]); } if (items[i].Expended) { GenerateVirtualListItems(items[i].Items); } } }
public void Recalc() { rowNumberIndex = 0; virtualList.Clear(); if (treeList.Groups.Count == 0) { GenerateVirtualListItems(treeList.Items); } else { foreach (var g in treeList.Groups) { var vitem = new VirtualTreeListItem(g, virtualList.Count); virtualList.Add(vitem); if (g.Expended) { GenerateVirtualListItems(g.Items); } } } }