我正在使用 XML 文件制作一个 Windows 8 Metro Style 测试应用程序。我可以读取文件和节点,包括编辑和删除它们。
我现在面临的问题并且无法弄清楚如何完成是添加节点。下面是我用于读取和保存的代码。
private static async System.Threading.Tasks.Task<XmlDocument> LoadXML()
{
StorageFolder storageFolder = ApplicationData.Current.RoamingFolder;
StorageFile storageFile = await storageFolder.GetFileAsync("Settings.xml");
var XmlFile = await XmlDocument.LoadFromFileAsync(storageFile);
return XmlFile;
}
private static async System.Threading.Tasks.Task SaveXML(XmlDocument XmlFile)
{
StorageFolder storageFolder = ApplicationData.Current.RoamingFolder;
StorageFile storageFile = await storageFolder.GetFileAsync("Settings.xml");
await XmlFile.SaveToFileAsync(storageFile);
MessageDialog Message = new MessageDialog("Data is saved/removed!", "Notification");
await Message.ShowAsync();
}
下面这部分是指上述两个事件。在这部分代码中,我是否需要根据来自文本框的信息添加一个新节点。
private async void btnSaveproject_Click(object sender, RoutedEventArgs e)
{
var XmlFile = await LoadXML();
await SaveXML(XmlFile);
}
对于那些想知道我是如何完成删除和编辑的人,我还会在下面添加这些代码部分。
// Removing
IXmlNode Node = XmlFile.SelectSingleNode("XML").SelectSingleNode("List").SelectSingleNode(lvList.SelectedItem.ToString());
XmlFile.SelectSingleNode("XML").SelectSingleNode("List").RemoveChild(Node);
//Saving
XmlFile.SelectSingleNode("XML").SelectSingleNode("Colors").SelectSingleNode("ColorR").InnerText = tbxColorR.Text;