2011-06-30 1 views
0

設定ファイルでXAMLと他のアプリの設定情報をシリアル化したいと思います。ような何か:私は、一方でXamlWriterを持っており、他の上の他のXML-APIの\名前空間が、私は方法を見つけることができません。他のプレーンなXMLノードの一部としてXAMLをシリアル化する方法は?

<root> 
    <settings> 
     ... 
    </settings> 
    <xaml_stuff> 
     ... 
    </xaml_stuff> 
</root> 

私はエレガントにそれを達成するためにどのように任意の指導のために感謝しますよそれらを一緒に接続する。

答えて

1

これが役立つかどうかを確認してください:http://msdn.microsoft.com/en-us/library/ms590446.aspx

私が理解から、それは最初にあなたがして

編集他の非XAMLのものを追加するために使用することができたXmlWriter、それをシリアライズ:ここでは(私が以前言ったことにいくつかの変更で)具体的なC#の例です。 ..

XmlTextWriter w = new XmlTextWriter("test.xml", Encoding.UTF8); 
w.WriteStartElement("root"); 
w.WriteAttributeString("xmlns", "x"); 
w.WriteStartElement("item1"); 
w.WriteEndElement(); 
w.WriteStartElement("item2"); 
w.WriteEndElement(); 

Button btn = new Button(); 
btn.Content = "Test Button"; 
btn.Width = 200; 
btn.Height = 100; 
btn.Foreground = Brushes.Green; 

string buf = XamlWriter.Save(btn); 
XmlTextReader reader = new XmlTextReader(new StringReader(buf)); 
reader.Read(); 
w.WriteNode(reader, true); 

w.WriteEndElement(); 
w.Flush(); 
w.Close(); 

そして、ここではそれが生成するファイルの内容は以下のとおりです。

<root xmlns="x"> 
    <item1 /> 
    <item2 /> 
    <Button Foreground="#FF008000" Width="200" Height="100" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation">Test Button</Button> 
</root> 
+0

はい、私はそのクラスに遭遇しましたが、私はXMLの作成や他のXMLリソースとそれを組み合わせる方法がわかりません。 – Tar

+0

私は答えを編集しました –

+0

はい、それです!ありがとう! – Tar

関連する問題