Form.ControlToPaginate Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit le contrôle sur le formulaire qui peut être paginé. La valeur par défaut est null
(Nothing
en Visual Basic). Cette API est obsolète. Pour plus d’informations sur le développement d’applications mobiles ASP.NET, consultez Mobile Apps & Sites avec ASP.NET.
public:
property System::Web::UI::Control ^ ControlToPaginate { System::Web::UI::Control ^ get(); void set(System::Web::UI::Control ^ value); };
[System.ComponentModel.Bindable(false)]
[System.ComponentModel.Browsable(false)]
public System.Web.UI.Control ControlToPaginate { get; set; }
[<System.ComponentModel.Bindable(false)>]
[<System.ComponentModel.Browsable(false)>]
member this.ControlToPaginate : System.Web.UI.Control with get, set
Public Property ControlToPaginate As Control
Valeur de propriété
Contrôle sur le formulaire qui peut être paginé.
- Attributs
Exemples
L’exemple de code suivant montre comment utiliser la ControlToPaginate propriété de la Form classe pour spécifier le contrôle à paginer.
L’exemple crée une page avec deux formulaires. Un formulaire a une chaîne très longue qui, sur certains appareils, doit être paginé pour permettre à l’utilisateur d’accéder au texte entier. Pour voir la pagination en action, vous devez afficher l’exemple sur un appareil qui gère la pagination. Dans Visual Studio 2005, vous pouvez utiliser l’un des émulateurs d’appareil disponibles avec le Gestionnaire d’émulateur d’appareil dans le menu Outils .
Notes
L’exemple de code suivant utilise le modèle de code à fichier unique et peut ne pas fonctionner correctement s’il est copié directement dans un fichier code-behind. Cet exemple de code doit être copié dans un fichier texte vide qui a une extension .aspx. Pour plus d’informations, consultez ASP.NET Vue d’ensemble de la syntaxe de page Web Forms.
<%@ Page Language="C#"
Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile"
Namespace="System.Web.UI.MobileControls"
Assembly="System.Web.Mobile" %>
<%@ Import Namespace="System.Web.UI.MobileControls" %>
<%@ Import Namespace="System.Drawing" %>
<script Runat="server">
//<Snippet7>
void Form_Activate(object sender, EventArgs e)
{
Form1.Wrapping = Wrapping.NoWrap;
string a = "This is a very long string <br />";
string b = "START ";
// Create a long string to force pagination
for (int i = 0; i < 100; i++)
b += a;
txtView.Text = b + " END";
Form1.ControlToPaginate = txtView;
}
//</Snippet7>
//<Snippet5>
void Form_Paginated(object sender, EventArgs e)
{
// Set the background color based on
// the number of pages
if (ActiveForm.PageCount > 1)
ActiveForm.BackColor = Color.LightBlue;
else
ActiveForm.BackColor = Color.LightGray;
// Check to see if the Footer template has been chosen
if (DevSpec.HasTemplates)
{
System.Web.UI.MobileControls.Label lbl = null;
// Get the Footer panel
System.Web.UI.MobileControls.Panel pan = Form1.Footer;
// Get the Label from the panel
lbl = (System.Web.UI.MobileControls.Label)pan.FindControl("lblCount");
// Set the text in the Label
lbl.Text = "Page #" + Form1.CurrentPage.ToString();
}
}
//</Snippet5>
//<Snippet6>
void Page_Load(object sender, EventArgs e)
{
// Set the pager text properties
if (!IsPostBack)
Form1.PagerStyle.NextPageText = "Go Next >";
else
{
// For postback, set different text
Form1.PagerStyle.NextPageText = "Go More >";
Form1.PagerStyle.PreviousPageText = "< Go Prev";
}
}
//</Snippet6>
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<!-- The first Form -->
<mobile:Form ID="Form1" Runat="server"
Paginate="true" OnActivate="Form_Activate"
OnPaginated="Form_Paginated">
<mobile:link ID="Link1" Runat="server"
NavigateUrl="#Form2">
Go To Other Form
</mobile:link>
<mobile:Label ID="Label1" Runat="server">
Welcome to ASP.NET
</mobile:Label>
<mobile:textview ID="txtView" Runat="server" />
<mobile:DeviceSpecific ID="DevSpec" Runat="server">
<Choice>
<FooterTemplate>
<mobile:Label runat="server" id="lblCount" />
</FooterTemplate>
</Choice>
</mobile:DeviceSpecific>
</mobile:Form>
<!-- The second Form -->
<mobile:Form ID="Form2" Runat="server"
Paginate="true" OnPaginated="Form_Paginated">
<mobile:Label ID="message2" Runat="server">
Welcome to ASP.NET
</mobile:Label>
<mobile:link ID="Link2" Runat="server"
NavigateUrl="#Form1">Back</mobile:link>
</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.Web.UI.MobileControls" %>
<%@ Import Namespace="System.Drawing" %>
<script runat="server">
'<Snippet7>
Private Sub Form_Activate(ByVal sender As Object, _
ByVal e As EventArgs)
Form1.Wrapping = Wrapping.NoWrap
Dim a As String = "This is a very long string <br />"
Dim b As String = "START "
Dim i As Integer
' Create a long string to force pagination
For i = 0 To 100
b &= a
Next
txtView.Text = b & " END"
Form1.ControlToPaginate = txtView
End Sub
'</Snippet7>
'<Snippet5>
Private Sub Form_Paginated(ByVal sender As Object, _
ByVal e As EventArgs)
' Set the background color based on
' the number of pages
If ActiveForm.PageCount > 1 Then
ActiveForm.BackColor = Color.LightBlue
Else
ActiveForm.BackColor = Color.LightGray
End If
' Check to see if the Footer template has been chosen
If DevSpec.HasTemplates Then
Dim lbl As System.Web.UI.MobileControls.Label
' Get the Footer panel
Dim pan As System.Web.UI.MobileControls.Panel = Form1.Footer
' Get the Label from the panel
lbl = CType(pan.FindControl("lblCount"), System.Web.UI.MobileControls.Label)
' Set the text in the Label
lbl.Text = "Page #" + Form1.CurrentPage.ToString()
End If
End Sub
'</Snippet5>
'<Snippet6>
Private Sub Page_Load(ByVal sender As Object, _
ByVal e As EventArgs)
' Set the pager text properties
If Not IsPostBack Then
Form1.PagerStyle.NextPageText = "Go Next >"
Else
' For postback, set different text
Form1.PagerStyle.NextPageText = "Go More >"
Form1.PagerStyle.PreviousPageText = "< Go Prev"
End If
End Sub
'</Snippet6>
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
<!-- The first Form -->
<mobile:Form ID="Form1" Runat="server"
Paginate="true" OnActivate="Form_Activate"
OnPaginated="Form_Paginated">
<mobile:link ID="Link1" Runat="server"
NavigateUrl="#Form2">
Go To Other Form
</mobile:link>
<mobile:Label ID="Label1" Runat="server">
Welcome to ASP.NET
</mobile:Label>
<mobile:textview ID="txtView" Runat="server" />
<mobile:DeviceSpecific ID="DevSpec" Runat="server">
<Choice>
<FooterTemplate>
<mobile:Label runat="server" id="lblCount" />
</FooterTemplate>
</Choice>
</mobile:DeviceSpecific>
</mobile:Form>
<!-- The second Form -->
<mobile:Form ID="Form2" Runat="server"
Paginate="true" OnPaginated="Form_Paginated">
<mobile:Label ID="message2" Runat="server">
Welcome to ASP.NET
</mobile:Label>
<mobile:link ID="Link2" Runat="server"
NavigateUrl="#Form1">Back</mobile:link>
</mobile:Form>
</body>
</html>
Remarques
La ControlToPaginate propriété est utilisée pour permettre à un seul contrôle d’un formulaire de paginer son contenu sur plusieurs vues sur des appareils mobiles et de fournir une navigation suivante et précédente entre les vues. Un contrôle peut paginer son contenu même si sa PanelPaginate propriété est définie sur false
.