上篇已提供核心程式碼架構,本文展示執行畫面並討論進階擴充方向。

圖中呈現:左側工具箱面板、中間設計畫布 (含拖曳建立的按鈕)、右側屬性視窗、右鍵選單。
| 功能 | 實作提示 |
|---|---|
| 控制項大小調整 | 滑鼠懸停邊緣顯示調整游標,MouseDown 記錄初始大小,MouseMove 更新 Width/Height |
| 對齊網格/智能吸附 | 移動時計算與其他控制項邊緣/中心線距離,< 5px 時自動對齊並顯示紅色輔助線 |
| Z-Order 操作 | 右鍵選單加入「置頂」「置底」「上移」「下移」,調用 BringToFront/SendToBack |
| 多選與群組 | Ctrl+Click 累加選取,框選矩形區域,群組移動時統一偏移 |
| 屬性網格增強 | 使用 PropertyGrid 控制項自動反射所有屬性,支援分類、描述、預設值 |
| 序列化儲存/載入 | 將控制項類型、位置、大小、屬性字典序列化為 JSON,下次啟動反序列化重建 |
| 撤銷/重做 | 命令模式:每個操作 (移動、屬性變更、新增、刪除) 封裝為 ICommand,維護堆疊 |
| 自訂控制項設計器整合 | 實作 IDesigner、DesignerAttribute,讓自訂控制項在 VS 設計期也有專屬體驗 |
Model (設計文件) ↔ ViewModel (選取狀態、命令) ↔ View (WinForms 畫布)。CommunityToolkit.Mvvm 簡化綁定與命令。[ToolboxItem] 的控制項自動填充工具箱。Panel/GroupBox/TabControl 等容器控制項的子項管理。歡迎至 MC 編程網 交流更多執行期設計器技術細節。