これどうやってするの?
TypeConverter を使用してみましたが、私が考えることができたのは、型の XML を構築することだけでした。xaml シリアル化の TypeConverters は xml をエスケープし、プレーン テキストのように扱います。値コンバーターはそれほど優れているわけではありません。
今、私は ISupportInitialize に移行しており、初期化後に変更が行われた場合はスローしますが、不変のルートが好きだったでしょう...
シリアライズしたい型の例:
public struct Foo
{
public string Bar {get;private set;}
public Foo(string bar) : this()
{
Bar = bar;
}
}
そしてコード
var foo = new Foo("lol");
var serializedFoo = XamlWriter.Save(foo);