/// <summary> /// Adds a new item value by copying an existing one. /// </summary> private void CopyMI_Click(object sender, System.EventArgs e) { try { // check for valid selection. if (ReadOnly || ValuesLV.SelectedItems.Count != 1) { return; } TsCHdaAnnotationValue value = (TsCHdaAnnotationValue)ValuesLV.SelectedItems[0].Tag; // create new item value. TsCHdaAnnotationValue copy = new AnnotationValueEditDlg().ShowDialog((TsCHdaAnnotationValue)value.Clone()); // prompt user to edit item value. if (copy == null) { return; } // update display. AddListItem(copy, ValuesLV.SelectedIndices[0]); // adjust columns AdjustColumns(); } catch (Exception exception) { MessageBox.Show(exception.Message); } }