新式控制項
畫布應用程式中的新式控制項代表 Microsoft 生態系統內使用者介面開發和設計的重大進步。 這些控制項以 Microsoft 的 Fluent Design System 為基礎,旨在提供快速、以效能為導向且可存取的使用者體驗,同時確保與主題功能的無縫整合。 這些控制項的引入,包括選項卡清單、進度條、資訊按鈕、微調器等,強調了向創建更直覺、響應靈敏和視覺吸引力的應用程式的策略轉變。 透過使用這些現代控件,開發人員可以輕鬆實現既美觀又功能豐富的複雜 UI 元素,從而提高整體用戶參與度和滿意度。
這些控制項的固有設計牢記主題,允許跨應用程式實現統一且一致的外觀和感覺,從而顯著減少自訂和品牌化應用程式所需的工作量。 根據設定的主題自動更新所有控制項樣式的能力簡化了設計過程,並確保應用程式在整個過程中保持視覺上的連貫性。 這完全符合現代企業尋求在提供高品質數位體驗的同時保持品牌一致性的需求。 現代控制項也強調可訪問性和效能,確保應用程式可供廣泛的受眾(包括殘疾人)使用,並符合包容性設計原則。 因此,畫布應用程式中的現代控制項不僅僅是一組 UI 元件,而是一個變革性的工具集,使開發人員能夠建立更有效率、可維護、可存取且有凝聚力的應用程序,以滿足企業和用戶不斷變化的需求。
這很重要
雖然畫布應用程式中新式控制項的子集已正式發行 (GA),但更廣泛的功能集仍處於預覽狀態。 我們鼓勵您探索這些預覽控制項並提供意見反應。 但是,請務必記住,在全面上市之前,它們的特性和功能可能會根據反饋和測試進行改進。
表單設計和指導方針
整理表單
- 將您的表單劃分為邏輯部分並將相關字段分組在一起。
- 請將表單保持在一個屏幕上。 如果它很長,請考慮將其分成多個屏幕、步驟或選項卡。
- 欄位標籤使用清晰簡單的語言,避免使用不熟悉的術語或行話。
- 實施驗證規則以確保資料的準確性。 對於必填欄位,請清楚指出它們是必填欄位。 根據需要驗證電子郵件地址、電話號碼和其他格式。
再利用表單
- 使用單一表單來建立新記錄、編輯現有記錄,以及以僅檢視模式顯示記錄。
- 重複使用相同的表單可減少開發和維護時間,同時確保一致性。
表單模式
根據使用者動作動態設定表單模式。 例如:
- 建立新記錄時,將表單設定為「新建」模式。
- 編輯現有記錄時,將表單設定為「編輯」模式。
- 顯示記錄時,將表單設定為「檢視」模式。
控制的布置
- 將不同的控制項 (例如圖庫、顯示表單和編輯表單) 放在不同的畫面上,以使其可區分。
- 將這些控制項與公式結合,以建立一致的使用者體驗。
容器
隨著畫布應用程式的大小變大以處理更多商務案例,控制項數目持續成長,而且必須根據控制項執行的功能來組織控制項。 一種簡單的方法是將控件一起選擇並將它們分組為一個組。 不過,不一定建議將控制項分組。 畫布應用程式 Container 控制項可以容納多個控制項,並具有自己的屬性。
容器充當空白空間,您可以在其中插入和組織與容器左上角相關的控制項。 您可以靈活地嵌套容器,允許建立更複雜的佈局並提供設計自由度。
容器是實際的控制項,具有自己的屬性,例如 Width 和 BorderColor。 容器會影響應用程式版面配置,並協助螢幕助讀程式使用者瞭解應用程式的結構。
雖然您可以在群組中新增任何控制項,但您應該只在容器中新增邏輯相關的控制項。
使用群組組織 Power Apps 中的元素可讓使用者將共用屬性套用至多個元素。 但是,在群組內進行單獨的屬性更改可能需要手動調整。 此外,由於無障礙考量,群組不會出現在應用程式的邏輯結構中,因為螢幕助讀程式無法辨識它們。 此外,無法將組巢狀化的功能使得創建更複雜的佈局變得具有挑戰性。
圖庫設計和指導方針
避免從內部變更圖庫項目
避免在子控制項事件 (例如 OnChange 或 OnSelect) 中修改資源庫的 Items 屬性。 這可能會導致意外行為,尤其是在處理某些控制項時,這些控制項會在其值變更時觸發事件。
在使用被 OnChange 觸發的控制項時請謹慎
在圖庫中使用組合框、日期選擇器、滑塊或切換等控件時要小心。 這些控制項可能會意外觸發 OnChange 事件,從而導致無限循環等潛在問題。
修補對性能的影響
在圖庫中修補或更新項目時,請注意效能影響,尤其是在處理大量項目時。 修補速度可能很慢,而且圖庫可能會重新載入所有項目,從而影響效能。
小心處理無限迴圈**
如果修改圖庫資料會觸發導致無限迴圈的事件,請考慮使用新式控制項或不會在資料變更時觸發 OnChange 的控制項來中斷迴圈。
避免嵌套圖庫
巢狀圖庫可能會導致效能問題和複雜的資料繫結。
盡可能避免巢狀資源庫。 相反,請嘗試設計資料結構並以最佳化的方式使用函數。
使用靈活高度的資源庫
固定高度的圖庫可能會導致內容可見性有限,尤其是在處理動態資料時。
要使用彈性高度圖庫,根據您的資料將Height屬性設定為Parent.Height或動態值。 這可確保圖庫調整其高度以適應不同數量的資料。
最佳化資料載入
在 Power Apps 中最佳化資料載入時,您可能只想擷取並顯示畫廊中必要的資料行,而不是擷取整個資料集。
以下是達成此目的的一個範例:假設您有一個含有多個欄位的集合 EmployeeData,而您想要在資料庫中只顯示 "姓名" 和 "部門" 這些欄位。
// Collection named ProductSales with sample sales data
ClearCollect(ProductSales,
Table(
{ ProductName: "Phone", UnitPrice: 499.99, QuantitySold: 100 },
{ ProductName: "Laptop", UnitPrice: 999.99, QuantitySold: 50 },
{ ProductName: "Tablet", UnitPrice: 299.99, QuantitySold: 75 }
)
)
// Bind the gallery to display only the "ProductName" and "QuantitySold" columns
Gallery1.Items = ShowColumns(ProductSales, ProductName, QuantitySold)
獲取圖庫最佳做法的更多資訊。
建置可重複使用的元件
何時使用 Power Apps 元件架構 (PCF) 建立自訂程式碼元件
Power Platform 允許透過 Power Apps 元件架構 (PCF) 建立可重複使用的元件。 這裡提供更多詳細資料。
以下是您可以考慮在 Power Apps 中建立 PCF 元件的案例:
複雜的 UI 元素
當您需要建立標準 Power Apps 控制項中不易使用的複雜使用者介面元素或控制項時。
針對特定要求的自訂控制項
當您的應用程式具有現成控制項無法滿足的特定需求,且您需要建立符合需求的自訂控制項時。
跨應用程式提供一致的使用者體驗
當您想要透過封裝 PCF 元件中的特定功能來在多個 Power Apps 或環境中保持一致的使用者體驗時。
跨應用程式的重複使用
當您預期需要在多個應用程式中重複使用特定功能或使用者介面元素時,建立 PCF 元件可讓您建置一次並重複使用。
實作進階邏輯
當您需要實作超出 Power Apps 中標準公式或函式功能的進階商務邏輯或計算時。
改善使用者體驗
當您的目標是透過建立預設控制項無法實現的視覺吸引力和互動式元件來增強整體使用者體驗時。