Vínculos entre páginas Web de ASP.NET Mobile
Actualización: noviembre 2007
Si tiene un vínculo con el formato #form1 en un control contenido en un control de usuario, el método ResolveFormReference busca en el control de usuario un formulario cuya propiedad ID se encuentre establecida en form1. Si no lo encuentra, el método ascenderá en la cadena de controles de usuario anidados y, a continuación, buscará el formulario en la página. Para vincular un formulario que esté contenido en un control de usuario, se debe utilizar la sintaxis siguiente a fin de identificarlo.
#mc1:form4
mc1 es el identificador del control de usuario. Los dos puntos (:) separan la referencia al formulario.
Nota: |
---|
No se admiten los delimitadores de elementos (direcciones URL con el formato page.aspx#element, donde page no es la página actual). |
Ejemplo
En el ejemplo de código siguiente se muestra la exploración entre formularios. El ejemplo contiene una página Web móvil y un control de usuario móvil.
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>