public void ReLoadDictionary() { dictionaryTreeView.Nodes.Clear(); LanguageData dataLayer = new LanguageData(); dsLanguageData.DictionaryDataTable dictionary = dataLayer.daDictionary.GetData(); foreach (dsLanguageData.DictionaryRow dict in dictionary) { MyTreeNode tmpDict = new MyTreeNode(dict.Name, dict.ID, MyTreeNodeType.Dictionary); foreach (char letter in dict.Alphabet) { MyTreeNode tmpLet = new MyTreeNode(letter.ToString(), -1, MyTreeNodeType.Letter); dsLanguageData.CardDataTable cards = dataLayer.GetCardsBeginningWith(letter.ToString(), dict.Column); foreach (dsLanguageData.CardRow card in cards) { tmpLet.Nodes.Add(new MyTreeNode((string)card[dict.Column], card.ID, MyTreeNodeType.Card)); } tmpDict.Nodes.Add(tmpLet); } dictionaryTreeView.Nodes.Add(tmpDict); } }