다음을 통해 공유


PagedControl.ItemWeight 속성

정의

컨트롤에 있는 단일 항목의 대략적인 가중치를 가져옵니다. 이 API는 더 이상 사용되지 않습니다. ASP.NET 모바일 애플리케이션을 개발하는 방법에 대한 자세한 내용은 ASP.NET 있는 Mobile Apps & 사이트를 참조하세요.

protected:
 virtual property int ItemWeight { int get(); };
protected virtual int ItemWeight { get; }
member this.ItemWeight : int
Protected Overridable ReadOnly Property ItemWeight As Integer

속성 값

컨트롤에 있는 단일 항목의 대략적인 가중치입니다.

예제

다음 코드 예제에서는 만들고 사용자 지정 목록 컨트롤을 사용 합니다. 재정의 하는 방법을 보여 줍니다 합니다 ItemWeight 의 속성을 List 새 컨트롤 가중치를 지정 하는 클래스입니다.

<%@ 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>
<%@ Page Language="VB" 
    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
        Inherits List

        Public Sub New()
            MyBase.New()
        End Sub

        ' Set a weight for the items
        Protected Overrides ReadOnly _
            Property ItemWeight() As Integer
            Get
                Return 150
            End Get
        End Property
    End Class

    Dim WithEvents List1 As ListControl
    
    Private Sub Page_Load(ByVal sender As Object, _
        ByVal e As EventArgs)

        ' Instantiate the custom control
        List1 = New ListControl()
        List1.ItemCount = 20
        List1.ID = "List1"
        Form1.Controls.Add(List1)

        Form1.ControlToPaginate = List1
    End Sub

    ' Called by the List whenever it needs new items
    Private Sub LoadNow(ByVal sender As Object, _
        ByVal e As LoadItemsEventArgs) _
        Handles List1.LoadItems

        Dim j As Integer = e.ItemIndex
        
        ' You have to estimate the item size
        Dim estItemSize As Integer = 110

        ' Get the optimum page weight for the device
        Dim wt As Integer = _
            Form1.Adapter.Page.Adapter.OptimumPageWeight
        ' Get the number of items per page
        List1.ItemsPerPage = wt / estItemSize
 
        ' Build a section of the array
        Dim arr As New ArrayList()
        For i As Integer = 1 To e.ItemCount
            Dim v As Integer = i + j
            arr.Add((v.ToString() + " List Item"))
        Next

        ' Bind the array to the list
        List1.DataSource = arr
        List1.DataBind()
    End Sub
</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>

설명

값이-1 요소에 대해 기본 가중치를 사용 해야 함을 나타냅니다. 상속 하는 클래스는이 속성을 재정의 해야 합니다. 이 속성을 재정의 하는 방법에 대 한 자세한 내용은 참조 매김합니다.

적용 대상

추가 정보