private void btnDuplicate_Click(object sender, RoutedEventArgs e) { var newCopy = new embeddingRule(); newCopy.allowArcDuplication = selectedEmbeddingRule.allowArcDuplication; foreach (string a in selectedEmbeddingRule.freeArcLabels) { newCopy.freeArcLabels.Add(a); } foreach (string a in selectedEmbeddingRule.freeArcNegabels) { newCopy.freeArcNegabels.Add(a); } foreach (string a in selectedEmbeddingRule.neighborNodeLabels) { newCopy.neighborNodeLabels.Add(a); } foreach (string a in selectedEmbeddingRule.neighborNodeNegabels) { newCopy.neighborNodeNegabels.Add(a); } newCopy.newDirection = selectedEmbeddingRule.newDirection; newCopy.originalDirection = selectedEmbeddingRule.originalDirection; newCopy.LNodeName = selectedEmbeddingRule.LNodeName; newCopy.RNodeName = selectedEmbeddingRule.RNodeName; // code above just copies each member in embeddedrule selectedRule.embeddingRules.Add(newCopy); // this adds the copied rule to the end of the list listBoxBE.UpdateTarget(); }
private void btnAddNew_Click(object sender, RoutedEventArgs e) { var newRule = new embeddingRule(); // adds a new rule at the end selectedRule.embeddingRules.Add(newRule); listBoxBE.UpdateTarget(); }