設計器文檔支援二進位、純文字、XML,強烈推薦 XML:
XmlDocument/XDocument)、標準格式、跨平台跨語言互通,簡化與外部系統整合。儲存物件資料兩種風格:
<!-- 屬性風格 -->
<Element Prop1="value1" Prop2="value2" />
<!-- 子元素風格 -->
<Element>
<Prop1>value1</Prop1>
<Prop2>value2</Prop2>
</Element>
推薦子元素風格,理由:
XmlDocument 物件樹。DesignElement 定義兩個虛擬方法:
LoadFromXml(XmlNode):從 XML 節點載入屬性與子元素。SaveToXml(XmlNode):將屬性寫入 XML 節點(建立子元素)。XML 文檔可存檔案、資料庫(單一版本、即時生效)、上傳伺服器,統一介面隔離儲存細節。
設計器視圖繪製需 DOM 支援,基礎元素須定義兩類介面:
Paint(Graphics, ViewContext)、GetBounds()、HitTest(Point) 等。OnMouseDown/Up/Move、OnKeyDown/Press/Up、OnDragDrop 等。這兩類介面構成「文檔模型 ↔ 視圖控制器」的標準契約,支援多視圖、無頭渲染(列印/匯出)等場景。