Form.ControlToPaginate プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
フォーム上で改ページ位置の自動修正が可能なコントロールを取得または設定します。 既定値は null
(Visual Basic では Nothing
) です。 この API は、互換性のために残されています。 ASP.NET モバイル アプリケーションを開発する方法については、「mobile Apps & Sites with 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
プロパティ値
フォーム上で改ページ位置の自動修正が可能なコントロール。
- 属性
例
次のコード例では、 クラスの Form プロパティをControlToPaginate使用して、ページ分割するコントロールを指定する方法を示します。
この例では、2 つのフォームを含むページを作成します。 1 つのフォームには非常に長い文字列があり、一部のデバイスでは、ユーザーがテキスト全体にアクセスできるようにページ分割する必要があります。 ページ分割の動作を確認するには、改ページ処理を処理するデバイスで例を表示する必要があります。 Visual Studio 2005 では、[ツール] メニューの [デバイス エミュレーター マネージャー] で使用できるデバイス エミュレーターのいずれかを使用できます。
注意
次のコード例では、単一ファイル コード モデルを使用しており、分離コード ファイルに直接コピーすると正しく動作しない場合があります。 このコード例は、.aspx拡張子を持つ空のテキスト ファイルにコピーする必要があります。 詳細については、「 ASP.NET Web フォーム ページ構文の概要」を参照してください。
<%@ 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>
注釈
プロパティは ControlToPaginate 、フォーム上の 1 つのコントロールがモバイル デバイス上の複数のビューでコンテンツを改ページし、ビュー間の次と前のナビゲーションを提供するために使用されます。 コントロールを含むコントロールのプロパティが にfalse
設定されている場合でも、コントロールのPaginate内容をPanel改ページ処理できます。
適用対象
こちらもご覧ください
.NET