This documentation is archived and is not being maintained.

PostBackOptions Class

Specifies how client-side JavaScript is generated to initiate a postback event.

Namespace:  System.Web.UI
Assembly:  System.Web (in System.Web.dll)

[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class PostBackOptions

The PostBackOptions class allows controls to emit client-side script that initiates a postback event. The PostBackOptions class also provides a reference to the control that initiated the postback event through the TargetControl property. The postback event is created based on the options specified in the PostBackOptions object passed in to the ClientScriptManager.GetPostBackEventReference method.

Normally, a postback to the server is initiated by elements such as a Submit button or an Image button. However, by emitting client-side JavaScript, different controls can initiate a postback event.

The following code example uses the OnClick event of a Button control to generate client-side script for a HyperLink control that will allow the HyperLink control to cause a postback event. Because the ActionUrl property of the myPostBackOptions object is set to "Page2.aspx", the postback will post the Web Forms page to another page named "Page2.aspx", which is not provided here. To use this example, you must add another Web page named "Page2.aspx" to your project or directory.

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class postbackoptionscs : System.Web.UI.Page
    protected void Page_Load(object sender, EventArgs e)
        if (Page.IsPostBack)
            Label1.Text = "A postback event has occurred.";

    protected void Button1_Click(object sender, EventArgs e)
        // Create a new PostBackOptions object and set its properties.
        PostBackOptions myPostBackOptions = new PostBackOptions(this);
        myPostBackOptions.ActionUrl = "Page2.aspx";
        myPostBackOptions.AutoPostBack = false;
        myPostBackOptions.RequiresJavaScriptProtocol = true;
        myPostBackOptions.PerformValidation = true;

        // Add the client-side script to the HyperLink1 control.
        HyperLink1.NavigateUrl = Page.ClientScript.GetPostBackEventReference(myPostBackOptions);

        Label1.Text = "Click this hyperlink to initiate a postback event.";

The following code example is a Web page that can be used to run the preceding code-behind file.

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="postbackoptions.aspx.cs" Inherits="postbackoptionscs" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "">

<html xmlns="" >
  <head id="Head1" runat="server">
    <title>PostBackOptions Example</title>
    <form id="form1" runat="server">
    <h3>PostBackOptions Example Page</h3>
      Click this button to create client-side script for the 
      Postback hyperlink that causes a postback event to occur.
      <br />
      <asp:Button id="Button1" 
        text="Create Script" 
        onclick="Button1_Click" />
      <br /><br />
      <asp:Label id="Label1" 
      <br />
      <asp:HyperLink id="HyperLink1" 


Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0