PagedControl.LoadItems Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Ocorre quando um controle é paginado de modo personalizado e precisa de mais dados. Esta API está obsoleta. Para obter informações sobre como desenvolver aplicativos móveis ASP.NET, consulte Aplicativos Móveis & Sites com ASP.NET.
public:
event System::Web::UI::MobileControls::LoadItemsEventHandler ^ LoadItems;
public event System.Web.UI.MobileControls.LoadItemsEventHandler LoadItems;
member this.LoadItems : System.Web.UI.MobileControls.LoadItemsEventHandler
Public Custom Event LoadItems As LoadItemsEventHandler
Tipo de evento
Exemplos
O exemplo a seguir mostra como usar a ItemsPerPage propriedade para renderizar oito itens de uma lista de 200 itens por página.
<%@ Page Language="C#"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile" %>
<script runat="server">
// Called by the List whenever it needs new items
private void LoadNow(object sender, LoadItemsEventArgs e)
{
int j = e.ItemIndex;
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;
// Clear the current items
List1.Items.Clear();
// 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"));
}
// Assign 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:List id="List1" runat="server"
ItemCount="200" onLoadItems="LoadNow" />
</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" %>
<script runat="server">
' Called by the List whenever it needs new items
Private Sub LoadNow(ByVal sender As Object, _
ByVal e As LoadItemsEventArgs)
Dim i, j As Integer
i = 0
j = e.ItemIndex
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
' Clear the current items
List1.Items.Clear()
' Build a section of the array
Dim arr As New ArrayList()
For i = 1 To e.ItemCount
arr.Add(j + i)
Next
' Assign 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:List id="List1" runat="server"
ItemCount="200" onLoadItems="LoadNow"
ItemsPerPage="8" />
</mobile:form>
</body>
</html>
Comentários
Quando o controle é paginado personalizado, você não associa explicitamente o controle. Após a paginação, o controle aciona esse evento, indicando qual parte dos dados é necessária. O aplicativo pode manipular esse evento e associar o controle aos dados necessários.