private void SetSelectedTypes() { List <string> listBaseType = new Files.FileParametersTypes().InitializeListType(); StringBuilder stringBuilder = new StringBuilder(); foreach (TreeTypeParameters itemType in _treeType.Tree) { foreach (TreeTypeParameters itemName in itemType.Children) { if (itemName.IsChecked == true) { if (stringBuilder.Length != 0) { stringBuilder.Append(", "); } if (string.IsNullOrEmpty(listBaseType.FirstOrDefault(f => f == itemType.Text))) { stringBuilder.Append(itemType.Text); stringBuilder.Append("."); } stringBuilder.Append(itemName.Text); } } } SelectedTypes = stringBuilder.ToString(); TextBoxSelectedTypes.Text = SelectedTypes; }
private void SetCurrentTypes() { Dictionary <string, List <string> > dictionatyTypes = new Files.FileParametersTypes().IninializeDictionatyTypeName(); foreach (string item in CurrentTypes.Replace(" ", "").Split(',')) { bool findSeparator = item.FirstOrDefault(f => f == '.') != char.MinValue; string nameParent = ""; string nameChildren; if (findSeparator) { string[] itemSubstring = item.Split('.'); nameParent = itemSubstring[0]; nameChildren = itemSubstring[1]; } else { nameChildren = item; foreach (KeyValuePair <string, List <string> > keyNames in dictionatyTypes) { foreach (string elementNames in keyNames.Value) { if (elementNames == nameChildren) { nameParent = keyNames.Key; break; } } } } if (!string.IsNullOrEmpty(nameParent)) { var children = _treeType.Tree.FirstOrDefault(f => f.Text == nameParent)?.Children; if (children != null) { for (int i = 0; i < children.Count; i++) { if (children[i].Text == nameChildren) { children[i].IsChecked = true; } } } } } }