TextView.LoadItems Událost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Nastane, když je ovládací prvek vlastní stránkovaný a vyžaduje více dat. Toto rozhraní API je zastaralé. Informace o vývoji ASP.NET mobilních aplikací najdete v tématu Mobilní aplikace & Weby s ASP.NET.
public:
event System::Web::UI::MobileControls::LoadItemsEventHandler ^ LoadItems;
[System.ComponentModel.Browsable(false)]
public event System.Web.UI.MobileControls.LoadItemsEventHandler LoadItems;
[<System.ComponentModel.Browsable(false)>]
member this.LoadItems : System.Web.UI.MobileControls.LoadItemsEventHandler
Public Custom Event LoadItems As LoadItemsEventHandler
Event Type
- Atributy
Příklady
Následující příklad kódu ukazuje, jak vytvořit vlastní stránkování a volat metodu LoadItems pro načtení zadaného počtu položek na stránku.
Poznámka
Následující ukázka kódu používá model kódu s jedním souborem a nemusí správně fungovat, pokud je zkopírován přímo do souboru kódu na pozadí. Tento vzorový kód musí být zkopírován do prázdného textového souboru s příponou .aspx. Další informace najdete v tématu ASP.NET model kódu stránky webových formulářů.
<%@ Page Language="C#"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile" %>
<script runat="server">
// Returns an array of Boolean values
private bool[] TestPrimes(int from, int howMany)
{
// Test a range of numbers to determine which are prime.
bool[] isPrime = new bool[howMany];
int endAt = from + howMany - 1;
for (int i = from; i < endAt; i++)
{ // Set a default value of true
isPrime[i - from] = true;
int sqrt = (int)Math.Sqrt(i);
for (int factor = 2; factor <= sqrt; factor++)
{
if ((i % factor) == 0)
{ // Set value as false
isPrime[i - from] = false;
break;
}
}
}
return isPrime;
}
//<Snippet2>
protected void Page_Load(object sender, EventArgs args)
{
if (!IsPostBack)
{
Primes.ItemCount = 2000;
Primes.ItemsPerPage = 20;
form1.ControlToPaginate = Primes;
}
}
//</Snippet2>
protected void Primes_OnLoadItems(object sender, LoadItemsEventArgs args)
{
StringBuilder StrBldr = new StringBuilder();
Primes.Text = "";
// Start the list at 2.
int startNumber = args.ItemIndex + 2;
bool[] isPrime;
isPrime = TestPrimes(startNumber, args.ItemCount);
for (int i = 0; i < args.ItemCount; i++)
{
string message;
if (isPrime[i])
message = String.Format("<b>{0} is prime</b>",
i + startNumber);
else
message = String.Format("<b>{0}</b> is not prime",
i + startNumber);
StrBldr.Append(message);
StrBldr.Append("<br />");
}
Primes.Text = StrBldr.ToString();
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="form1" runat="server" paginate="true">
<mobile:TextView id="Primes" runat="server"
OnLoadItems="Primes_OnLoadItems" />
</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">
' Returns an array of Boolean values
Private Function TestPrimes(ByVal [from] As Integer, ByVal howMany As Integer) As Boolean()
' Test a range of numbers to determine which are prime.
Dim isPrime(howMany - 1) As Boolean
Dim endAt As Integer = From + howMany - 1
For i As Integer = From To endAt - 1
isPrime(i - From) = True
Dim sqrt As Integer = CInt(Fix(Math.Sqrt(i)))
For factor As Integer = 2 To sqrt
If (i Mod factor) = 0 Then
isPrime(i - From) = False
Exit For
End If
Next factor
Next i
Return isPrime
End Function
'<Snippet2>
Protected Sub Page_Load(ByVal sender As Object, ByVal args As EventArgs)
If Not IsPostBack Then
Primes.ItemCount = 2000
Primes.ItemsPerPage = 20
form1.ControlToPaginate = Primes
End If
End Sub
'</Snippet2>
Protected Sub Primes_OnLoadItems(ByVal sender As Object, ByVal args As LoadItemsEventArgs)
Dim StrBldr As New StringBuilder()
Primes.Text = ""
' Start the list at 2.
Dim startNumber As Integer = args.ItemIndex + 2
Dim isPrime() As Boolean
isPrime = TestPrimes(startNumber, args.ItemCount)
For i As Integer = 0 To args.ItemCount - 1
Dim message As String
If isPrime(i) Then
message = String.Format("<b>{0} is prime</b>", i + startNumber)
Else
message = String.Format("<b>{0}</b> is not prime", i + startNumber)
End If
StrBldr.Append(message)
StrBldr.Append("<br />")
Next i
Primes.Text = StrBldr.ToString()
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<mobile:form id="form1" runat="server" paginate="true">
<mobile:TextView id="Primes" runat="server"
OnLoadItems="Primes_OnLoadItems" />
</mobile:form>
</body>
</html>
Poznámky
Pokud je ovládací prvek vlastní stránkovaný, není explicitně vázán ovládací prvek. Po stránkování ovládací prvek vyvolá tuto událost, která označuje, jaká část dat je požadována. Aplikace může zpracovat tuto událost a vytvořit vazbu ovládacího prvku s požadovanými daty.