LinkButton.PostBackUrl Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define a URL da página que será usada para postagem da página atual quando um usuário clicar no controle LinkButton.
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
Valor da propriedade
A URL da página da Web que será usada para postagem da página atual quando o controle LinkButton for acionado. O valor padrão é uma cadeia de caracteres vazia (""), que faz com que a página execute postback para si mesma.
Implementações
- Atributos
Exemplos
O exemplo de código a seguir demonstra como usar a PostBackUrl propriedade para executar uma postagem entre páginas. Quando o usuário clica no LinkButton controle, a página posta o valor inserido na caixa de texto na página de destino especificada pela PostBackUrl propriedade . Para executar este exemplo, você também deve criar um arquivo para a página de destino no mesmo diretório que este exemplo de código. O código da página de destino é fornecido no próximo exemplo.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos html ou script. Para obter mais informações, consulte Visão geral de explorações de script.
<%@ 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>LinkButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:linkbutton id="LinkButton1"
text="Post back to this page"
runat="Server">
</asp:linkbutton>
<br /><br />
<asp:linkbutton id="LinkButton2"
text="Post value to another page"
postbackurl="LinkButton.PostBackUrlPage2cs.aspx"
runat="Server">
</asp:linkbutton>
</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>LinkButton.PostBackUrl Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Example</h3>
Enter a value to post:
<asp:textbox id="TextBox1"
runat="Server">
</asp:textbox>
<br /><br />
<asp:linkbutton id="LinkButton1"
text="Post back to this page"
runat="Server">
</asp:linkbutton>
<br /><br />
<asp:linkbutton id="LinkButton2"
text="Post value to another page"
postbackurl="LinkButton.PostBackUrlPage2vb.aspx"
runat="Server">
</asp:linkbutton>
</form>
</body>
</html>
O exemplo de código a seguir demonstra como usar a Page.PreviousPage propriedade para acessar um valor que foi postado de outra página usando a PostBackUrl propriedade . Esta página obtém a cadeia de caracteres que foi postada da página anterior e a exibe para o usuário. Se você tentar executar este exemplo de código diretamente, receberá um erro porque o valor do text
campo será null
. Em vez disso, use esse código para criar uma página de destino e colocar o arquivo no mesmo diretório que o código do exemplo anterior. O nome do arquivo deve corresponder ao valor especificado para a PostBackUrl propriedade no exemplo anterior. Quando você executar o código do exemplo anterior, essa página será executada automaticamente quando ocorrer a postagem entre páginas.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do usuário, que é uma possível ameaça à segurança. Por padrão, ASP.NET páginas da Web validam que a entrada do usuário não inclui elementos html ou script. Para obter mais informações, consulte Visão geral de explorações de script.
<%@ 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>LinkButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.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>LinkButton.PostBackUrl Target Page Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>LinkButton.PostBackUrl Target Page Example</h3>
<br />
<asp:label id="PostedLabel"
runat="Server">
</asp:label>
</form>
</body>
</html>
Comentários
A PostBackUrl propriedade permite que você execute uma postagem entre páginas usando o LinkButton controle . Defina a PostBackUrl propriedade como a URL da página da Web para postar quando o LinkButton controle for clicado. Por exemplo, especificar Page2.aspx faz com que a página que contém o LinkButton controle seja postada em Page2.aspx
. Se você não especificar um valor para a PostBackUrl propriedade , a página será posta de volta para si mesma.
Importante
Ao executar um postback entre páginas com controles com validação do lado do servidor, você deve verificar se a propriedade da IsValid página é true
antes de processar o postback. No caso de um postback entre páginas, a página a ser verificada é PreviousPage. O seguinte código do Visual Basic mostra como isso é feito:
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
Para obter mais informações sobre técnicas de postagem entre páginas, consulte Postagem entre páginas no ASP.NET Web Forms.
Essa propriedade não pode ser definida por temas ou temas de folha de estilos. Para obter mais informações, consulte ThemeableAttribute e ASP.NET Temas e Capas.