.NET Mobile Forms

From http://www.w3schools.com (Copyright Refsnes Data)

# .NET Mobile Forms

.NET Mobile Forms are specialized web forms designed to work on different mobile devices.

## Mobile Pages

A mobile page is much the same as an ordinary .NET web page. It is a text file with an aspx extension, and it can contain a variety of web controls.

The difference is the page directive that identifies the page as a mobile page, and the controls used on the page, which are mobile controls.

The mobile controls can be programmed device-independently, and the page will produce an output that suits the device that access it.

## Mobile Forms

Each mobile page must have at least one mobile form, and each mobile form can have a number of mobile controls.

Note that mobile pages can have multiple mobile forms. This is due to the nature of mobile devices. Mobile devices have small screens and it is very normal to navigate between screens with a simple link.

## Automatic Paging

.NET Mobile supports automatic paging for different mobile devices.

The paging is handled differently for each control. For example when paging takes place the controls included in a panel control will stay together.

## Displaying Text

This mobile page uses a TextView control to display a large amount of text:

    <%@ Page
    Inherits=
    "System.Web.UI.MobileControls.MobilePage"%>
    <%@ Register
    TagPrefix="Mobile"
    Namespace="System.Web.UI.MobileControls"
    Assembly="System.Web.Mobile" %>

    <Mobile:Form runat="server">
    <Mobile:TextView runat="server">
    This is a very long text to demonstrate
    how text can be displayed over several screens.
    This is a very long text to demonstrate
    how text can be displayed over several screens.
    This is a very long text to demonstrate
    how text can be displayed over several screens.
    This is a very long text to demonstrate
    how text can be displayed over several screens.
    </Mobile:TextView>
    </Mobile:Form>

When this page is displayed on a mobile device, the navigation and display functions of the page will be compiled differently for different devices with different display characteristics.

When the text is displayed on a pocket PC with a small display, the user will be able to scroll the text with a scroll bar, but on a cell phone the text will be displayed over several screens with proper navigation tools added.

Note that all mobile controls must have the runat attribute set to "server", in order to secure proper rendering of the page for different devices.

## Single Forms

This mobile page has one form:

    <%@ Page
    Inherits=
    "System.Web.UI.MobileControls.MobilePage"%>
    <%@ Register
    TagPrefix="Mobile"
    Namespace="System.Web.UI.MobileControls"
    Assembly="System.Web.Mobile" %>

    <Mobile:Form runat="server">
       <Mobile:Label runat="server">Hello W3Schools
       </Mobile:Label>
    </Mobile:Form>

## Multiple Forms

This mobile page has two forms:

    <%@ Page
    Inherits=
    "System.Web.UI.MobileControls.MobilePage"%>
    <%@ Register
    TagPrefix="Mobile"
    Namespace="System.Web.UI.MobileControls"
    Assembly="System.Web.Mobile" %>

    <Mobile:Form id="f1" runat="server">
     <Mobile:Label runat="server">Hello W3Schools
     </Mobile:Label>
     <Mobile:Link runat="server" NavigateURL="#f2">2
     </Mobile:Link>
    </Mobile:Form>

    <Mobile:Form id="f2" runat="server">
     <Mobile:Label runat="server">Hello Again
     </Mobile:Label>
     <Mobile:Link runat="server" NavigateURL="#f1">1
     </Mobile:Link>
    </Mobile:Form>

## Links

Note the <Mobile:Link> element in the example above. The link control lets the user navigate between the two mobile forms.

From http://www.w3schools.com (Copyright Refsnes Data)