TextView.LoadItems Ereignis
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Tritt ein, wenn für ein Steuerelement benutzerdefinierte Paginierung durchgeführt wird und dieses mehr Daten erfordert. Diese API ist veraltet. Informationen zum Entwickeln ASP.NET mobiler Anwendungen finden Sie unter Mobile Apps & Sites mit 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
Ereignistyp
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Sie eine benutzerdefinierte Paginierung erstellen und die LoadItems -Methode aufrufen, um eine angegebene Anzahl von Elementen pro Seite zu laden.
Hinweis
Im folgenden Codebeispiel wird das Einzeldateicodemodell verwendet. Es funktioniert möglicherweise nicht ordnungsgemäß, wenn es direkt in eine CodeBehind-Datei kopiert wird. Dieses Codebeispiel muss in eine leere Textdatei mit einer .aspx-Erweiterung kopiert werden. Weitere Informationen finden Sie unter ASP.NET Web Forms-Seitencodemodell.
<%@ 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>
Hinweise
Wenn das Steuerelement benutzerdefinierte Paginierung aufweist, binden Sie das Steuerelement nicht explizit. Nach der Paginierung löst das Steuerelement dieses Ereignis aus, das angibt, welcher Teil der Daten erforderlich ist. Die Anwendung kann dieses Ereignis behandeln und das Steuerelement an die erforderlichen Daten binden.