private List <string> GetContent(Intellisense intellisense, List <string> split, int level) { if (level == Level) { return(intellisense.Select(x => x.Name).ToList()); } else { if (split.Count > level) { var intellisenseItem = intellisense.Where(x => x.Name == split[level]).FirstOrDefault(); if (intellisenseItem != null) { return(GetContent(intellisenseItem.Children, split, ++level)); } } return(null); } }
private void UpdateIntellisenseContent() { if (Intellisense != null) { if (Level < 0) { ContentAssistSource = Intellisense.Select(x => x.Name).ToList(); } else { var split = CompleteWord.Split(new char[] { '.' }, StringSplitOptions.RemoveEmptyEntries).ToList(); var contents = GetContent(Intellisense, split, 0); if (contents != null) { ContentAssistSource = contents; } else { ContentAssistSource.Clear(); } } } }
private List<string> GetContent(Intellisense intellisense, List<string> split, int level) { if (level == Level) { return intellisense.Select(x => x.Name).ToList(); } else { if (split.Count > level) { var intellisenseItem = intellisense.Where(x => x.Name == split[level]).FirstOrDefault(); if (intellisenseItem != null) { return GetContent(intellisenseItem.Children, split, ++level); } } return null; } }