1

我正在使用 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;
4

0 回答 0