static void Main(string[] args) { XmlConfigurator.Configure(); TreeViewModel viewModel = new TreeViewModel(); Compose(viewModel); Console.WriteLine("Welcome in reflection Tree View program."); viewModel.ExecuteBrowseFile(); viewModel.LoadDLL(); Console.Clear(); foreach (TreeViewNode node in viewModel.HierarchicalAreas) { DisplayTree(node, 0); } ConsoleKey control = Console.ReadKey().Key; while (control != ConsoleKey.Escape) { if (control == ConsoleKey.RightArrow) { Console.Clear(); foreach (TreeViewNode node in viewModel.HierarchicalAreas) { ExpandTree(node); DisplayTree(node, 0); } } else if (control == ConsoleKey.LeftArrow) { Console.Clear(); foreach (TreeViewNode node in viewModel.HierarchicalAreas) { ConvolveTree(node); DisplayTree(node, 0); } } else if (control == ConsoleKey.S) { Console.Clear(); viewModel.Serialize(); } else if (control == ConsoleKey.D) { Console.Clear(); viewModel.Deserialize(); Console.Clear(); foreach (TreeViewNode node in viewModel.HierarchicalAreas) { ConvolveTree(node); DisplayTree(node, 0); } } control = Console.ReadKey().Key; } }