Beispiel #1
0
        private int CountSubKeys(RegistryKeyHolder2 keyHolder)
        {
            int totalSubKeyCount = keyHolder.subKeys.Count;

            foreach (RegistryKeyHolder2 childKeyHolder in keyHolder.subKeys)
            {
                totalSubKeyCount += CountSubKeys(childKeyHolder);
            }
            return(totalSubKeyCount);
        }
Beispiel #2
0
        private void ItemCollapsedOrExpanded2(object sender, RoutedEventArgs e)
        {
            TreeViewItem       tvi          = (TreeViewItem)e.OriginalSource;
            RegistryKeyHolder2 keyHolder    = (RegistryKeyHolder2)tvi.Header;
            RegistryData2      registryData = (RegistryData2)this.grid2.DataContext;

            if (e.RoutedEvent == TreeViewItem.ExpandedEvent)
            {
                registryData.PopulateSubKeys(keyHolder);
            }
            else if (e.RoutedEvent == TreeViewItem.CollapsedEvent)
            {
                registryData.ClearSubKeys(keyHolder);
            }
            this.InvokeUpdateVisualCount(this.treeView2);
            e.Handled = true;
        }
Beispiel #3
0
        public void ClearSubKeys(RegistryKeyHolder2 keyHolder)
        {
            int itemsClearedCount = keyHolder.ClearSubKeys();

            this.DataItemsCount -= itemsClearedCount;
        }
Beispiel #4
0
        public void PopulateSubKeys(RegistryKeyHolder2 keyHolder)
        {
            int itemsAddedCount = keyHolder.PopulateSubKeys();

            this.DataItemsCount += itemsAddedCount;
        }