ImageButton.PostBackUrl Tulajdonság
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Lekéri vagy beállítja annak a lapnak az URL-címét, amelybe a vezérlőelem kattintásakor ImageButton az aktuális oldalról szeretne bejegyzést közzétenni.
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
Tulajdonság értéke
Annak a weblapnak az URL-címe, amelybe a vezérlőelem kattintásakor fel szeretne venni az ImageButton aktuális lapról. Az alapértelmezett érték egy üres sztring (""), amely miatt a lap visszakerül önmagába.
Megvalósítás
- Attribútumok
Példák
Az alábbi példakód bemutatja, hogyan használhatja a PostBackUrl tulajdonságot egy többoldalas bejegyzés végrehajtására. Amikor a felhasználó a ImageButton vezérlőre kattint, a lap a szövegmezőben megadott értéket a tulajdonság által PostBackUrl megadott céllapra helyezi. A minta futtatásához egy fájlt is létre kell hoznia a céllaphoz ugyanabban a könyvtárban, mint ez a példakód. A céloldal kódját a következő példában adhatja meg.
<%@ 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>
Az alábbi példakód bemutatja, hogyan használhatja a Page.PreviousPage tulajdonságot egy másik lapról közzétett érték elérésére a PostBackUrl tulajdonság használatával. Ez a lap lekéri az előző oldalról közzétett sztringet, és megjeleníti a felhasználónak. Ha közvetlenül próbálja futtatni ezt a példakódot, hibaüzenet jelenik meg, mert a mező értéke a Text következő lesz null: . Ehelyett ezzel a kóddal hozzon létre egy céllapot, és helyezze a fájlt ugyanabba a könyvtárba, mint az előző példa kódja. A fájl nevének meg kell felelnie az előző példában a PostBackUrl tulajdonsághoz megadott értéknek. Az előző példához tartozó kód futtatásakor a lap automatikusan végrehajtja a többoldalas bejegyzést.
Note
Az alábbi kódminta az egyfájlos kódmodellt használja, és előfordulhat, hogy nem működik megfelelően, ha közvetlenül egy kód mögötti fájlba másolja. Ezt a kódmintát egy üres szövegfájlba kell másolni, amely .aspx kiterjesztéssel rendelkezik. A Webes űrlapok kódmodellről további információt a ASP.NET Web Forms Lapkódmodell című témakörben talál.
<%@ 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>
Megjegyzések
A PostBackUrl tulajdonság lehetővé teszi, hogy oldalközi bejegyzést végezzen a ImageButton vezérlővel. Állítsa be a PostBackUrl tulajdonságot annak a weblapnak az URL-címére, amelybe a vezérlőelemre kattintva közzéteheti a ImageButton bejegyzést. A beállítás Page2.aspx például azt eredményezi, hogy a vezérlőt ImageButton tartalmazó lap közzéteendő Page2.aspx. Ha nem ad meg értéket a PostBackUrl tulajdonsághoz, az oldal visszahelyezi magát.
Important
Ha kiszolgálóoldali ellenőrzéssel rendelkező vezérlőkkel végez oldalkeresztezést, ellenőrizze, hogy a lap tulajdonsága IsValid a postback feldolgozása előtt van-e true . Többoldalas utómunkák esetén az ellenőrizni kívánt lap az PreviousPage. A következő Visual Basic kód bemutatja ennek módját:
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
Az oldalközi közzétételi technikákról további információt a Cross-Page Posting in ASP.NET Web Forms című témakörben talál.
Ez a tulajdonság nem állítható be témák vagy stíluslaptémák szerint. További információ: ThemeableAttribute és ASP.NET Témák és bőrök.