LinkButton.PostBackUrl Свойство

Определение

Получает или задает URL-адрес страницы, на которую осуществляется передача с текущей страницы при нажатии элемента управления 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

Значение свойства

String

URL-адрес веб-страницы, на которую осуществляется передача с текущей страницы при нажатии элемента управления LinkButton. Значение по умолчанию — пустая строка (""), которая приводит к обратной передаче страницы самой себе.

Реализации

Атрибуты

Примеры

В следующем примере кода показано, как использовать PostBackUrl свойство для выполнения межстраничной публикации. Когда пользователь щелкает LinkButton элемент управления, страница публикует значение, введенное в текстовом поле, на целевую страницу, указанную свойством PostBackUrl . Чтобы запустить этот пример, необходимо также создать файл для целевой страницы в том же каталоге, что и в этом примере кода. Код целевой страницы приведен в следующем примере.

Важно!

В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.

<%@ 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>

В следующем примере кода показано, как использовать Page.PreviousPage свойство для доступа к значению, размещенного на другой странице с помощью PostBackUrl свойства. Эта страница получает строку, опубликованную на предыдущей странице, и отображает ее пользователю. Если вы попытаетесь запустить этот пример кода напрямую, вы получите ошибку, так как значение text поля будет.null Вместо этого используйте этот код для создания целевой страницы и размещения файла в том же каталоге, что и код для предыдущего примера. Имя файла должно соответствовать значению, указанному для PostBackUrl свойства в предыдущем примере. При запуске кода для предыдущего примера эта страница будет выполняться автоматически при возникновении межстраничной публикации.

Важно!

В этом примере имеется текстовое поле, принимающее вводимые пользователем данные, что является потенциальной угрозой безопасности. По умолчанию данные, вводимые пользователем на веб-страницах ASP.NET, проверяются на наличие скриптов и HTML-элементов. Дополнительные сведения см. в разделе Общие сведения об использовании сценариев.

<%@ 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>

Комментарии

Свойство PostBackUrl позволяет выполнять перекрестную запись с помощью LinkButton элемента управления. PostBackUrl Задайте для свойства URL-адрес веб-страницы для публикации при щелчке LinkButton элемента управления. Например, указание Page2.aspx приводит к тому, что страница, содержащая LinkButton элемент управления, будет отправляться в Page2.aspx. Если для свойства не указано значение PostBackUrl , страница публикуется обратно в себя.

Важно!

При выполнении перекрестной обратной передачи с элементами управления с проверкой на стороне сервера следует убедиться, что свойство страницы IsValid находится true перед обработкой обратной передачи. В случае перекрестной обратной передачи страница для проверки — PreviousPage. В следующем Visual Basic коде показано, как это делается:

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

Дополнительные сведения о методах межстраничной публикации см. в разделе "Межстраничные публикации" в ASP.NET Web Forms.

Значение для данного свойства нельзя задать с помощью тем или тем таблиц стилей. Дополнительные сведения см. в статье ThemeableAttribute и ASP.NET темы и обложки.

Применяется к

См. также раздел