private void uiBtnOk_Click(object sender, EventArgs e) { txtElementName.Text = txtElementName.Text.Trim(); if (txtElementName.Text == string.Empty) { lblElementNameError.Text = "Element Name not provided"; return; } string newElementName = txtElementName.Text.Replace("<", "").Replace(">", ""); var existingElement = ScriptElements.Where(var => var.ElementName == newElementName).FirstOrDefault(); if (existingElement != null) { if (!_isEditMode || existingElement.ElementName != _editingVariableName) { lblElementNameError.Text = "An Element with this name already exists"; return; } } if (!txtElementName.Text.StartsWith("<") || !txtElementName.Text.EndsWith(">")) { lblElementNameError.Text = "Element markers '<' and '>' must be included"; return; } dgvDefaultValue.EndEdit(); DialogResult = DialogResult.OK; }
private void tvScriptElements_DoubleClick(object sender, EventArgs e) { //handle double clicks outside if (tvScriptElements.SelectedNode == null) { return; } //if parent was selected return if (tvScriptElements.SelectedNode.Parent == null) { return; } //top node check var topNode = GetSelectedTopNode(); if (topNode.Text != "My Task Elements") { return; } ScriptElement element; string elementName; DataTable elementValue; TreeNode parentNode; if (tvScriptElements.SelectedNode.Nodes.Count == 0) { parentNode = tvScriptElements.SelectedNode.Parent; elementName = tvScriptElements.SelectedNode.Parent.Text; } else { parentNode = tvScriptElements.SelectedNode; elementName = tvScriptElements.SelectedNode.Text; } element = ScriptElements.Where(x => x.ElementName == elementName).FirstOrDefault(); elementValue = element.ElementValue; //create element editing form frmAddElement addElementForm = new frmAddElement(elementName, elementValue); addElementForm.ScriptElements = ScriptElements; ExpandUserElementNode(); //validate if user added element if (addElementForm.ShowDialog() == DialogResult.OK) { //remove parent parentNode.Remove(); AddUserElementNode(_userElementParentNode, addElementForm.txtElementName.Text, addElementForm.ElementValueDT); } addElementForm.Dispose(); }
private void tvScriptElements_KeyDown(object sender, KeyEventArgs e) { //handling outside if (tvScriptElements.SelectedNode == null) { return; } //if parent was selected return if (tvScriptElements.SelectedNode.Parent == null) { //user selected top parent return; } //top node check var topNode = GetSelectedTopNode(); if (topNode.Text != "My Task Elements") { return; } //if user selected delete if (e.KeyCode == Keys.Delete) { //determine which node is the parent TreeNode parentNode; if (tvScriptElements.SelectedNode.Nodes.Count == 0) { parentNode = tvScriptElements.SelectedNode.Parent; } else { parentNode = tvScriptElements.SelectedNode; } //remove parent node string elementName = parentNode.Text; ScriptElement element = ScriptElements.Where(x => x.ElementName == elementName).FirstOrDefault(); ScriptElements.Remove(element); parentNode.Remove(); } }