public async Task ParseSolution()
        {
            var tree =
                await CodeParser.GetPublicMethodsFromSolution(
                    @"C:\Users\jakobe\Source\Repos\NewRepo4\WebApplication1\WebApplication1.sln");

            Console.WriteLine("****************************Traversing tree*********************************");
            _treeviewModel = new TreeViewModel(tree.Node);
            BuildTree(tree, _treeviewModel);
        }
        public void AnalyzeSolution(DTE dte, string solutionPath)
        {
            IsLoading = Visibility.Visible;
            Tree      = null;

            Task.Run(() =>
            {
                var publicMethods = CodeParser.GetPublicMethodsFromSolution(solutionPath).Result;
                Application.Current.Dispatcher.Invoke(new Action(() =>
                {
                    var treeviewModel = new TreeViewModel(dte, publicMethods.Node);

                    CastToTreeViewModel(publicMethods, treeviewModel);
                    treeviewModel.IsExpanded = true;
                    if (publicMethods.Children.Count > 0)
                    {
                        Tree = new ObservableCollection <TreeViewModel> {
                            treeviewModel
                        };
                    }
                    IsLoading = Visibility.Collapsed;
                }));
            });
        }