重新編頁支援
更新:2007 年 11 月
無線裝置使用的螢幕能力大不相同。有些螢幕支援相當豐富的內容顯示。有些則只顯示幾行單色文字。基本螢幕內容必須經常重新編頁,才能適當的顯示。ASP.NET Mobile 控制項能讓應用程式自動將表單分成目標裝置適用的頁面。本章節描述行動控制項如何處理重新編頁。
瞭解重新編頁加權系統
表單重新編頁處理序是以加權系統為基礎。每個頁面配接器都會透過 OptimumPageWeight 屬性傳回表單的最佳頁面權重。
裝置配接器集可以提供頁面和每一個控制項的最佳權重。這些權重的單位選擇很有彈性。您可以調整適當的權重單位慣例,但如果您遵循預設單位系統,則可使用裝置配接器集合控制項的預設權重。
![]() |
---|
如 DefaultWeight 類別 (Class) 中的 ControlPager 常數所示,預設單位系統是以一行等於 100 個單位為根據。 |
重新編頁時,ASP.NET 會在控制項樹狀目錄中重複計算權重並指定頁數。ASP.NET 在呈現目前網頁之後,會適當地進行重新編頁。您可以使用 FirstPage 和 LastPage 屬性來判斷控制項的一或多個指派頁面。
重新編頁演算法會參考能防止在橫跨多重頁面的內容上重新編頁的控制項設定。例如,也許您不想讓 Panel 控制項的內容分散到多個頁面。若要防止控制項內容重新編頁,請覆寫控制項實作 (Implementation) 中的 PaginateChildren 屬性,並傳回 false。
支援基本重新編頁
若要確保適當的重新編頁,控制項必須覆寫 VisibleWeight 屬性,並傳回權重。預設權重是 100,對應至預設單位系統中的一行。
此外,若要使控制項權重具備裝置特定性質,控制項配接器可以使用特殊裝置之適當值來覆寫 VisibleWeight 屬性。VisibleWeight 屬性的 MobileControl 基底類別 (Base Class) 實作會從該裝置配接器擷取此值。
設計內部和自訂重新編頁
某些控制項使用重新編頁來分割有多重表單頁面的控制項內容 (即使不含子控制項)。例如,擁有多個項目的 List 控制項可能會將自身重新編頁成跨多重表單頁面。這稱作內部重新編頁。可以內部重新編頁的控制項,也能自訂重新編頁。自訂重新編頁提供給應用程式的回呼函式,能讓應用程式視需要提供必要資料給控制項,並且能集結相關資料。
防止重新編頁
重新編頁會分割橫跨多重頁面的控制項內容。有時您可能要防止橫跨多重頁面的控制項重新編頁。例如,您可能要防止 Panel 控制項重新編頁。Panel 控制項具有 Paginate 屬性,根據預設,這個屬性會設定為 false。