ImageButton.PostBackUrl Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die URL der Seite ab, an die Daten von der aktuellen Seite gesendet werden sollen, wenn auf das ImageButton-Steuerelement geklickt wird, oder legt diese fest.
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
Eigenschaftswert
Die URL der Webseite, an die Daten von der aktuellen Seite gesendet werden sollen, wenn auf das ImageButton-Steuerelement geklickt wird. Der Standardwert ist eine leere Zeichenfolge (""), wodurch die Seite an sich selbst zurückgesendet wird.
Implementiert
- Attribute
Beispiele
Im folgenden Codebeispiel wird veranschaulicht, wie Die PostBackUrl -Eigenschaft zum Ausführen eines seitenübergreifenden Beitrags verwendet wird. Wenn der Benutzer auf das ImageButton Steuerelement klickt, postet die Seite den in das Textfeld eingegebenen Wert an die Zielseite, die von der PostBackUrl -Eigenschaft angegeben wird. Zum Ausführen dieses Beispiels müssen Sie auch eine Datei für die Zielseite im selben Verzeichnis wie dieses Codebeispiel erstellen. Der Code für die Zielseite wird im nächsten Beispiel bereitgestellt.
<%@ 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>
Im folgenden Codebeispiel wird veranschaulicht, wie sie mithilfe der Page.PreviousPage -Eigenschaft auf einen Wert zugreifen, der von einer anderen Seite mit der PostBackUrl -Eigenschaft veröffentlicht wurde. Diese Seite ruft die Zeichenfolge ab, die von der vorherigen Seite veröffentlicht wurde, und zeigt sie dem Benutzer an. Wenn Sie versuchen, dieses Codebeispiel direkt auszuführen, erhalten Sie eine Fehlermeldung, da der Wert des Text
Felds ist null
. Verwenden Sie stattdessen diesen Code, um eine Zielseite zu erstellen und die Datei im selben Verzeichnis wie der Code für das vorherige Beispiel zu platzieren. Der Name der Datei muss dem wert entsprechen, der für die PostBackUrl -Eigenschaft im vorherigen Beispiel angegeben wurde. Wenn Sie den Code für das vorherige Beispiel ausführen, wird diese Seite automatisch ausgeführt, wenn der seitenübergreifende Beitrag auftritt.
Hinweis
Das folgende Codebeispiel verwendet das Einzeldateicodemodell und funktioniert möglicherweise nicht ordnungsgemäß, wenn es direkt in eine CodeBehind-Datei kopiert wird. Dieses Codebeispiel muss in eine leere Textdatei mit einer .aspx-Erweiterung kopiert werden. Weitere Informationen zum Web Forms-Codemodell finden Sie unter ASP.NET Web Forms-Seitencodemodell.
<%@ 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>
Hinweise
Mit PostBackUrl der -Eigenschaft können Sie einen seitenübergreifenden Beitrag mit dem ImageButton -Steuerelement ausführen. Legen Sie die PostBackUrl -Eigenschaft auf die URL der Webseite fest, an der gepostet werden soll, wenn auf das ImageButton Steuerelement geklickt wird. Wenn Sie z. B. Page2.aspx
angeben, wird die Seite, die das ImageButton -Steuerelement enthält, in posten Page2.aspx
. Wenn Sie keinen Wert für die PostBackUrl -Eigenschaft angeben, sendet die Seite an sich selbst zurück.
Wichtig
Wenn Sie ein seitenübergreifendes Postback mit Steuerelementen mit serverseitiger Validierung durchführen, sollten Sie vor der Verarbeitung des Postbacks IsValid überprüfen, ob die Eigenschaft der Seite vorhanden ist true
. Bei einem seitenübergreifenden Postback ist die zu überprüfende Seite die PreviousPage. Der folgende Visual Basic-Code zeigt, wie dies geschieht:
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
Weitere Informationen zu Techniken für die seitenübergreifende Veröffentlichung finden Sie unter Seitenübergreifendes Posten in ASP.NET Web Forms.
Diese Eigenschaft kann nicht durch Designs oder Stylesheetdesigns festgelegt werden. Weitere Informationen finden Sie unter ThemeableAttribute und ASP.NET-Designs und Skins.