Compartilhar via


A vinculação entre páginas de Web móveis do ASP.NET

Se você tiver um link no formato #form1 em um controle contido em um controle de usuário, o ResolveFormReference método aparece no controle de usuário de um formulário cuja ID propriedade estiver definida como form1. Se o formulário não for encontrado, o método percorre a cadeia de controles de usuário aninhados e, em seguida, procurará o formulário na página.Para vincular um formulário que está contido em um controle de usuário, use a sintaxe a seguir para identificar o formulário.

#mc1:form4

mc1 é o identificador de controle de usuário. Os dois-pontos (:) separa a referência ao formulário.

Observação:

Não há nenhum suporte para o elemento ancora (URLs do formulário page.aspx#element, onde page não é a página corrente).

Exemplo

O exemplo de código a seguir demonstra a navegação entre formulários.O exemplo contém uma página da Web móvel e um controle de usuário para dispositivos móveis.

Formtest.aspx

<%@ Page Language="C#" 
    Inherits="System.Web.UI.MobileControls.MobilePage" %>
<%@ Register TagPrefix="mobile" 
    Namespace="System.Web.UI.MobileControls" 
    Assembly="System.Web.Mobile" %>
<%@ Register TagPrefix="uc1" TagName="MobileWebUserControl1" 
    Src="formtest.ascx" %>
<script >
void Form_Activate(Object sender, EventArgs e)
{
    ((Form)sender).DataBind();
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
<body>
  <mobile:form id="Form1"  
    OnActivate="Form_Activate">
    <mobile:Label ID="Label1"  
        Text='<%# "Current: " + ActiveForm.UniqueID %>' />
    <mobile:Link ID="Link1" href="#form2" 
        >Go to Form 2</mobile:Link>
    <mobile:Link ID="Link2" href="#form3" 
        >Go to Form 3</mobile:Link>
    <mobile:Link ID="Link3" href="#mc1:form4" 
        >Go to Form 4</mobile:Link>
   /mobile:form>

  <mobile:Form ID="Form2" Runat="server" 
      OnActivate="Form_Activate">
    <mobile:Label ID="Label2"  
        Text='<%# "Current: " + ActiveForm.UniqueID %>' />
    <mobile:Link ID="Link4" href="#form1" 
        >Go to Form 1</mobile:Link>
    <mobile:Link ID="Link5" href="#form3" 
        >Go to Form 3</mobile:Link>
    <mobile:Link ID="Link6" href="#mc1:form4" 
        >Go to Form 4</mobile:Link>
  </mobile:Form>

  <mobile:Form ID="Form3" Runat="server" 
      OnActivate="Form_Activate">
    <mobile:Label ID="Label3" Runat="server" 
        Text='<%# "Current: " + ActiveForm.UniqueID %>'>
    </mobile:Label>
    <mobile:Link ID="Link7" href="#form1"
        Runat="server" >Go to Form 1</mobile:Link>
    <mobile:Link ID="Link8" href="#form2"
        Runat="server" >Go to Form 2</mobile:Link>
    <mobile:Link ID="Link9" href="#mc1:form4"
        Runat="server" >Go to Form 4</mobile:Link>
  </mobile:Form>

  <uc1:MobileWebUserControl1 id="mc1"  />
</body>
</html>

Formtest.ascx

<%@ Control Language="C#" ClassName="FormTest" 
    Inherits="System.Web.UI.MobileControls.MobileUserControl" %>
<%@ Register TagPrefix="mobile" 
    Namespace="System.Web.UI.MobileControls" 
    Assembly="System.Web.Mobile" %>

<script >
void Form_Activate(Object sender, EventArgs e)
{
    ((Form)sender).DataBind();
}
</script>

<mobile:Form ID="Form4" Runat="server" OnActivate="Form_Activate">
  <mobile:Label ID="Label1"  
      Text='<%# "Current: " + 
        ((MobilePage)Page).ActiveForm.UniqueID %>' />
  <mobile:Link ID="Link1" href="#form1" 
      >Go to Form 1</mobile:Link>
  <mobile:Link ID="Link2" href="#form2" 
      >Go to Form 2</mobile:Link>
  <mobile:Link ID="Link3" href="#form3" 
      >Go to Form 3</mobile:Link>
  <mobile:Link ID="Link4" href="#form4a" 
      >Go to Form 4a</mobile:Link>
</mobile:Form>

<mobile:Form ID="Form4a" Runat="server" OnActivate="Form_Activate">
  <mobile:Label ID="Label"  
      Text='<%# "Current: " + 
        ((MobilePage)Page).ActiveForm.UniqueID %>' />
  <mobile:Link ID="Link5" href="#form1" 
      >Go to Form 1</mobile:Link>
  <mobile:Link ID="Link6" href="#form2" 
      >Go to Form 2</mobile:Link>
  <mobile:Link ID="Link7" href="#form3" 
       >Go to Form 3</mobile:Link>
  <mobile:Link ID="Link8" href="#form4" 
      >Go to Form 4</mobile:Link>
</mobile:Form>

Consulte também

Referência

AddLinkedForms

ResolveFormReference

Outros recursos

Desenvolvimento de páginas de Web móveis do ASP.NET

Guia do desenvolvedor do aplicativo