承接前文專案實戰,本文系統介紹 RapidWebDev 框架核心——動態頁面 XML 配置 (*.dp.xml),詳細說明五大面板組件、開發流程、主要組件功能與完整實戰案例。

一個動態頁面包含五種面板(僅 GridPanel 必須,ButtonPanel 可多個,其他可選):

面板顯示順序 = 配置檔中順序。
filename.dp.xml,撰寫配置內容IDynamicPage 介面 (查詢、單筆刪除)IDetailPanel 介面 (建立、修改、檢視單筆)IAggregatePanel 介面 (批次處理、其他邏輯)提供三個抽象基底類別實作基本操作,一般情況無需從零開始。
IDynamicPage.Query 回傳資料繫結至 GridPanelNew (需配合 DetailPanel)、Print/DownloadExcel (需配合 AggregatePanel)IDynamicPage.DeleteIDetailPanelCreate/Update → 關閉並重新整理 GridCreate → Reset 重置頁面 → 連續新增需求:
UI 規劃與配置步驟:
| 步驟 | 配置內容 | 對應需求 |
|---|---|---|
| 1 | GridViewPanel:CheckBox、刪除/修改按鈕、資料欄 | 需求 1、2 |
| 2 | 實作 IDynamicPage:查詢清單、刪除單筆 | 需求 1、2 |
| 3 | ButtonPanel:New 按鈕 | 需求 1 (新增入口) |
| 4 | DetailPanel + ASCX 模板:掃描介面 (預設數量 1、焦點在條碼欄) | 需求 1、2 |
| 5 | 實作 IDetailPanel:新增/修改邏輯 | 需求 1、2 |
| 6 | ButtonPanel 新增 Print、DownloadExcel 按鈕 | 需求 3 (零程式碼) |
| 7 | ButtonPanel 新增 SubmitProduct 按鈕 | 需求 4 |
| 8 | 配置 AggregatePanel 區段 | 需求 4 |
| 9 | 建立匯總 ASCX 模板指定 AggregatePanel | 需求 4 |
| 10 | 實作 IAggregatePanel:SubmitProduct 入庫邏輯 | 需求 4 |
| 11 | sitemap.config 加入連結 | 選單整合 |
| 12 | permissions.config 配置權限 | 權限控制 |
上述步驟完成完整功能,程式碼量減少 50%+,配合框架輔助 API 更可大幅縮減。後續章節將逐節詳細講解 XML 配置節點與屬性。