void InitFunctions(TreeNode ndRoot) { List<string> ar = new List<string>(); ar.AddRange(StaticLists.FunctionList); // Build list of methods in the VBFunctions class Oranikle.Report.Engine.FontStyleEnum fsi = FontStyleEnum.Italic; // just want a class from RdlEngine.dll assembly Assembly a = Assembly.GetAssembly(fsi.GetType()); if (a == null) return; Type ft = a.GetType("Oranikle.Report.Engine.VBFunctions"); BuildMethods(ar, ft, ""); // build list of financial methods in Financial class ft = a.GetType("Oranikle.Report.Engine.Financial"); BuildMethods(ar, ft, "Financial."); a = Assembly.GetAssembly("".GetType()); ft = a.GetType("System.Math"); BuildMethods(ar, ft, "Math."); ft = a.GetType("System.Convert"); BuildMethods(ar, ft, "Convert."); ft = a.GetType("System.String"); BuildMethods(ar, ft, "String."); ar.Sort(); string previous=""; foreach (string item in ar) { if (item != previous) // don't add duplicates { // Add the node to the tree TreeNode aRoot = new TreeNode(item); ndRoot.Nodes.Add(aRoot); } previous = item; } }