我有一个XMLProfile类,它具有将数据写入/编辑/删除到xml文件的方法。该数据被读出并显示在Visual C#列表视图应用/取消按钮事件逻辑
public void xmlwriter(string path)
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load("C:\\product.txt);
XmlNode fold = xdoc.CreateElement("Folder");
XmlNode name = xdoc.CreateElement("Name");
XmlNode rec = xdoc.CreateElement("Recurse");
name.InnerText = path;
rec.InnerText = "true";
fold.AppendChild(name);
fold.AppendChild(rec);
xdoc.SelectSingleNode("//Folders").AppendChild(fold);
xdoc.Save("C:\\product.txt");
}
的写方法(添加新数据到XML)是上面所示和删除如下所示
public void delete(string snode)
{
XmlDocument xdoc = new XmlDocument();
xdoc.Load("C:\\product.txt");
foreach (XmlNode node in xdoc.SelectNodes("BackupProfile/Folders/Folder"))
{
string temp = node.SelectSingleNode("Name").InnerText;
if (temp == snode)
{
node.ParentNode.RemoveChild(node);
}
}
xdoc.Save("C:\\product.txt");
}
类似地编辑和复位方法。
弗洛姆我的主要节目形式叫我用一个按钮,这些方法点击
private void button8_Click(object sender, EventArgs e)
{
this.folderBrowserDialog1.ShowNewFolderButton = false;
this.folderBrowserDialog1.RootFolder = System.Environment.SpecialFolder.MyComputer;
DialogResult result = this.folderBrowserDialog1.ShowDialog();
if (result == DialogResult.OK)
{
// user selected folder will be added to the XML Profile for backup
string path = this.folderBrowserDialog1.SelectedPath;
XMLProfile xml = new XMLProfile();
xml.xmlwriter(path);
listView1.Items.Add(path);
}
}
上述方法是添加新的数据调用从XMLProfile类XmlWriter的方法。
这一切工作正常,但现在我意识到只有在修改完成并保存之前有一个“应用”按钮才是正确的。
我该如何实施?我用这个链接StackOverflow,但它不适用于我实际上不知道如何在我的项目中实现。随着应用按钮,我有一个取消按钮。 取消:显而易见不应保存更改,只需重新加载xml文件即可返回到以前保存的版本。
任何帮助表示赞赏,如果需要任何进一步的信息,请不要问。谢谢。
对不起,我可能会明白这是错误的。你的意思是应用按钮或多或少地检查保存是否成功。但是这意味着取消按钮会有更多的麻烦。 – 2013-03-26 11:16:55
向我们显示您的取消按钮代码 – Shaharyar 2013-03-26 11:22:49
不,我的意思是禁用应用按钮,并启用它作为保存按钮代码中的最后一步 – evgenyl 2013-03-26 12:04:41