private void listView_AfterLabelEdit(object sender, LabelEditEventArgs e) { ListViewItem li = listView.Items[e.Item]; VALSTRO vALSTRO = (VALSTRO)li.Tag; if (vALSTRO.NewItem) { string newValueName = e.Label == null ? vALSTRO.ValueName : e.Label; if (!MREG_CreateValue(vALSTRO.Key.RootKey, vALSTRO.Key.KeyPath, newValueName)) { listView.Items.Remove(li); MessageBox.Show("无法创建新值\n" + MREG_GetLastErrString(), "创建新值", MessageBoxButtons.OK, MessageBoxIcon.Hand); } else { vALSTRO.ValueName = newValueName; vALSTRO.NewItem = false; } } else if (e.Label != null && e.Label != "") { if (!MREG_RenameValue(vALSTRO.Key.RootKey, vALSTRO.Key.KeyPath, vALSTRO.ValueName, e.Label)) { e.CancelEdit = true; MessageBox.Show("无法重命名值\n" + MREG_GetLastErrString(), "重命名值", MessageBoxButtons.OK, MessageBoxIcon.Hand); } } }
private void 修改ToolStripMenuItem_Click(object sender, EventArgs e) { if (listView.SelectedItems.Count > 0) { ListViewItem li = listView.SelectedItems[0]; VALSTRO vALSTRO = (VALSTRO)li.Tag; } }
private void 除ToolStripMenuItem1_Click(object sender, EventArgs e) { if (listView.SelectedItems.Count > 0) { if (MessageBox.Show("删除某些注册表值会引起系统不稳定。确实要永久删除此数值吗?", "确认数值删除", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation) == DialogResult.Yes) { VALSTRO vALSTRO = (VALSTRO)listView.SelectedItems[0].Tag; if (MREG_DeleteKeyValue(vALSTRO.Key.RootKey, vALSTRO.Key.KeyPath, vALSTRO.ValueName)) { listView.Items.Remove(listView.SelectedItems[0]); } else { MessageBox.Show("无法删除数值\n" + MREG_GetLastErrString(), "数值删除", MessageBoxButtons.OK, MessageBoxIcon.Hand); } } } }