hvis du lige vil have et lille eksempel på hvordan du kan udnytte det på en lidt labet (og typestærk) måde kan du lige kigge her :
(lille setup med en From.aspx og en To.aspx)
// først From.aspx :
<%@ Page language="c#" Codebehind="From.aspx.cs" AutoEventWireup="false" Inherits="EXP2.Transfer.From" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>From</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="
http://schemas.microsoft.com/intellisense/ie5"> </HEAD>
<body>
<form id="Form1" method="post" runat="server">
<asp:Button id="Button1" runat="server" Text="Button"></asp:Button>
</form>
</body>
</HTML>
// og en code-behind
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace EXP2.Transfer
{
public class From : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button Button1;
protected HtmlForm Form1;
public HtmlForm TheServerForm
{
get{return Form1;}
}
private void Page_Load(object sender, System.EventArgs e)
{
}
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
private void Button1_Click(object sender, System.EventArgs e)
{
Server.Transfer("To.aspx");
}
}
}
Altså bare en form med en knap der serverside laver en Server.Transfer til To.aspx.
(bemærk at jeg har lagt en public property der giver adgang til formen !)
På To.aspx har jeg ikke lavet noget aspx-kode, men du kan lige se dette lille trick :
// i page_load i code-behin til To-formen :
private void Page_Load(object sender, System.EventArgs e)
{
From frompage = Context.Handler as From;
if(frompage != null)
{
// se det betyder jo så, at der er blevet lavet en transfer fra From.aspx,
// og du kan så få direkte adgang til formen via den property jeg nævnte.
HtmlForm form = frompage.TheServerForm;
// her kan du så kigge formen igennem, og gøre hvad du vil.
}
}
Er det noget du kan bruge til noget heloo ?
mvh