PagedControl.ItemWeight Property
.NET Framework 2.0
Gets the approximate weight of a single item in the control.
Namespace: System.Web.UI.MobileControls
Assembly: System.Web.Mobile (in system.web.mobile.dll)
Assembly: System.Web.Mobile (in system.web.mobile.dll)
A value of -1 indicates that the default weight for the element must be used. The inheriting class must override this property. For further information about overriding this property, see Pagination Support.
The following code example creates and uses a custom list control. The example demonstrates how to override the ItemWeight property of a List class to specify a new control weight.
<%@ Page Language="C#" Inherits="System.Web.UI.MobileControls.MobilePage" %> <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %> <%@ Import Namespace="System.Security.Permissions" %> <script runat="server"> // A custom list control for illustration [AspNetHostingPermission(SecurityAction.Demand, Level=AspNetHostingPermissionLevel.Minimal), AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class ListControl : List { public ListControl() : base() {} // Set a weight for the items protected override int ItemWeight { get { return 150; } } } ListControl List1; private void Page_Load(object sender, System.EventArgs e) { // Instantiate the custom control List1 = new ListControl(); List1.ItemCount = 20; List1.ID = "List1"; List1.LoadItems += this.LoadNow; Form1.Controls.Add(List1); Form1.ControlToPaginate = List1; } // Called by the List whenever it needs new items private void LoadNow(object sender, LoadItemsEventArgs e) { int j = e.ItemIndex; // You have to estimate the item size int estItemSize = 110; // Get the optimum page weight for the device int wt = Form1.Adapter.Page.Adapter.OptimumPageWeight; // Get the number of items per page List1.ItemsPerPage = wt / estItemSize; // Build a section of the array ArrayList arr= new ArrayList(); for (int i = 1; i <= e.ItemCount; i++) { int v = i + j; arr.Add((v.ToString() + " List Item")); } // Bind the array to the list List1.DataSource = arr; List1.DataBind(); } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <body> <mobile:Form id="Form1" runat="server" Paginate="true"> <mobile:TextView ID="TextView1" Runat="server" /> </mobile:Form> </body> </html>
Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.
Community Additions
ADD
Show: