1

XML ファイルを使用して Windows 8 Metro スタイル テスト アプリケーションを作成しています。ファイルとノードの読み取りが機能しており、それらの編集と削除が含まれています。

私が今直面している問題で、完了する方法がわからないのは、ノードの追加です。以下は、読み取りと保存に使用しているコードです。

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();
    }

以下のこの部分は、上記の 2 つを参照するイベントです。コードのこの部分では、テキスト ボックスからの情報に基づいて新しいノードを追加する必要があります。

    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