ImageButton.PostBackUrl Proprietà
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Ottiene o imposta l'URL della pagina a cui effettuare l'invio dalla pagina corrente quando si fa clic sul controllo ImageButton.
public:
virtual property System::String ^ PostBackUrl { System::String ^ get(); void set(System::String ^ value); };
[System.Web.UI.Themeable(false)]
public virtual string PostBackUrl { get; set; }
[<System.Web.UI.Themeable(false)>]
member this.PostBackUrl : string with get, set
Public Overridable Property PostBackUrl As String
Valore della proprietà
L'URL della pagina Web a cui effettuare l'invio dalla pagina corrente quando si fa clic sul controllo ImageButton. Il valore predefinito è una stringa vuota (""), che determina il postback della pagina a se stessa.
Implementazioni
- Attributi
Esempio
Nell'esempio di codice seguente viene illustrato come usare la PostBackUrl proprietà per eseguire un post tra pagine. Quando l'utente fa clic sul ImageButton controllo, la pagina pubblica il valore immesso nella casella di testo nella pagina di destinazione specificata dalla PostBackUrl proprietà. Per eseguire questo esempio, è necessario creare anche un file per la pagina di destinazione nella stessa directory di questo esempio di codice. Il codice per la pagina di destinazione viene fornito nell'esempio successivo.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>ImageButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ImageButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:imagebutton id="ImageButton1"
imageUrl=""
alternatetext="Post back to this page"
runat="Server">
</asp:imagebutton>
<br /><br />
<asp:imagebutton id="ImageButton2"
imageUrl=""
alternatetext="Post value to another page"
postbackurl="ImageButton.PostBackUrlPage2cs.aspx"
runat="Server">
</asp:imagebutton>
</form>
</body>
</html>
<%@ page language="VB"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>ImageButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ImageButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:imagebutton id="PostImageButton"
imageUrl="Images\PostButton.jpg"
alternatetext="Post back to this page"
runat="Server">
</asp:imagebutton>
<br /><br />
<asp:imagebutton id="CrossPostImageButton"
imageUrl="Images\CrossPostButton.jpg"
alternatetext="Post value to another page"
postbackurl="ImageButton.PostBackUrlPage2vb.aspx"
runat="Server">
</asp:imagebutton>
</form>
</body>
</html>
Nell'esempio di codice seguente viene illustrato come usare la Page.PreviousPage proprietà per accedere a un valore pubblicato da un'altra pagina usando la PostBackUrl proprietà . Questa pagina ottiene la stringa pubblicata dalla pagina precedente e la visualizza all'utente. Se si tenta di eseguire direttamente questo esempio di codice, verrà visualizzato un errore perché il valore del Text
campo sarà null
. Usare invece questo codice per creare una pagina di destinazione e posizionare il file nella stessa directory del codice per l'esempio precedente. Il nome del file deve corrispondere al valore specificato per la proprietà nell'esempio PostBackUrl precedente. Quando si esegue il codice per l'esempio precedente, questa pagina verrà eseguita automaticamente quando si verifica il post tra pagine.
Nota
L'esempio di codice seguente usa il modello di codice a file singolo e potrebbe non funzionare correttamente se copiato direttamente in un file code-behind. Questo esempio di codice deve essere copiato in un file di testo vuoto con un'estensione .aspx. Per altre informazioni sul modello di codice Web Forms, vedere ASP.NET modello di codice della pagina Web Forms.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Page_Load (object sender, System.EventArgs e)
{
string text;
// Get the value of TextBox1 from the page that
// posted to this page.
text = ((TextBox)PreviousPage.FindControl("TextBox1")).Text;
// Check for an empty string.
if (text != "")
PostedLabel.Text = "The string posted from the previous page is "
+ text + ".";
else
PostedLabel.Text = "An empty string was posted from the previous page.";
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>ImageButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ImageButton.PostBackUrl Target Page Example</h3>
<br />
<asp:label id="PostedLabel"
runat="Server">
</asp:label>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim text As String
' Get the value of TextBox1 from the page that posted
' to this page.
text = CType((PreviousPage.FindControl("TextBox1")), TextBox).Text
' Check for an empty string.
If Not (text = "") Then
PostedLabel.Text = "The string posted from the previous page is " _
& text & "."
Else
PostedLabel.Text = "An empty string was posted from the previous page."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="head1" runat="server">
<title>ImageButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>ImageButton.PostBackUrl Target Page Example</h3>
<br />
<asp:label id="PostedLabel"
runat="Server">
</asp:label>
</form>
</body>
</html>
Commenti
La PostBackUrl proprietà consente di eseguire un post tra pagine usando il ImageButton controllo . Impostare la PostBackUrl proprietà sull'URL della pagina Web su su quando viene fatto clic sul ImageButton controllo. Ad esempio, se si specifica Page2.aspx
, la pagina contenente il ImageButton controllo viene postata in Page2.aspx
. Se non si specifica un valore per la proprietà, la PostBackUrl pagina esegue il post di nuovo su se stessa.
Importante
Quando si esegue un postback tra pagine con controlli con convalida lato server, è necessario verificare che la proprietà della pagina sia true
prima di IsValid elaborare il postback. Nel caso di un postback tra pagine, la pagina da controllare è PreviousPage. Il codice Visual Basic seguente illustra come eseguire questa operazione:
Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
If Page.PreviousPage.IsValid Then
' Handle the post back
Else
Response.Write("Invalid")
End If
End Sub
Per altre informazioni sulle tecniche di registrazione tra pagine, vedere Registrazione tra pagine in ASP.NET Web Forms.
Questa proprietà non può essere impostata da temi oppure temi di fogli di stile. Per altre informazioni, vedere ThemeableAttribute e ASP.NET Temi e skin.