1

WPFを次のようにサブクラス化Paragraphし、追加データを含めてシリアライズおよびデシリアライズしたいと考えています。

xamlString = XamlWriter.Save(_richTextBox.Document);トリックを行いません-拡張データは省略されます。

XamlWriterこの余分なデータを含めるように指示する方法はありますか?

拡張データは次のとおりです。

[ContentProperty("Inlines")]
public class ExParagraph : Paragraph
{
    public ParagraphMetaData MetaData = new ParagraphMetaData();
}

[ContentProperty("Inlines")]
public class ParagraphMetaData {
    private Guid _updaterParagraphUniqueId;

    public Guid UpdaterParagraphUniqueId {
        get { return _updaterParagraphUniqueId; }
        set {
            _updaterParagraphUniqueId = value;
            IsUpdaterParagraph = value != default(Guid);
        }
    }

    public bool IsUpdaterParagraph { get; private set; }
    public string Name;
    public bool DoNotToggleColor;
}

編集 - 解決策:

レスポンダーに感謝します: フィールドは r/w プロパティでなければなりません

さらに、これ[ContentProperty("Inlines")]が根本的な問題でした - サブクラスのシリアル化を妨げていましたParagraph

4

1 に答える 1