/// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public System.Collections.Generic.List <string> GetMethodNames()
        {
            System.Collections.Generic.List <string> M = new List <string>();

            EnvDTE80.FileCodeModel2 FileCodeModel = this.Application.ActiveDocument.ProjectItem.FileCodeModel as EnvDTE80.FileCodeModel2;
            EnvDTE.CodeElements     elements      = FileCodeModel.CodeElements;

            foreach (EnvDTE.CodeElement element in elements)
            {
                if (element.Kind == EnvDTE.vsCMElement.vsCMElementNamespace)
                {
                    foreach (EnvDTE.CodeElement element2 in element.Children)
                    {
                        if (element2.Kind == EnvDTE.vsCMElement.vsCMElementClass)
                        {
                            EnvDTE80.CodeClass2 CurrentClass = element2 as EnvDTE80.CodeClass2;

                            foreach (EnvDTE.CodeElement element3 in element2.Children)
                            {
                                if (element3.Kind == EnvDTE.vsCMElement.vsCMElementFunction)
                                {
                                    EnvDTE80.CodeFunction2 CurrentFunction = element3 as EnvDTE80.CodeFunction2;
                                    M.Add(CurrentFunction.Name);
                                }
                            }
                        }
                    }
                }
            }
            return(M);
        }
 /// <summary>
 ///
 /// </summary>
 /// <returns></returns>
 public string GetCurrentMethodName()
 {
     try{
         EnvDTE.TextSelection   SelectedText    = this.Application.ActiveDocument.Selection as EnvDTE.TextSelection;
         EnvDTE.TextPoint       tp              = SelectedText.TopPoint as EnvDTE.TextPoint;
         EnvDTE.CodeElement     c               = this.Application.ActiveDocument.ProjectItem.FileCodeModel.CodeElementFromPoint(tp, EnvDTE.vsCMElement.vsCMElementFunction);
         EnvDTE80.CodeFunction2 CurrentFunction = c as EnvDTE80.CodeFunction2;
         return(c.Name);
     }
     catch {
         return("");
     }
 }