asp.net阻止事件被引发

时间:2010-01-18 19:10:56

标签: asp.net updatepanel

我有一个控件(.ascx)位于页面(.aspx)上。在该控件中,有一个asp.net更新面板,包含该控件的所有内容。当控件执行回发后,它会自动引发控件中的所有事件以及它所在页面中的所有事件。这导致了严重的性能问题。

有没有办法阻止引发控件所在页面上的事件?

谢谢

1 个答案:

答案 0 :(得分:1)

检查ScriptManager.IsInAsyncPostBack Property

以下是示例代码:

protected void Page_Load(object sender, EventArgs e)
{
    if (Page.IsPostBack)
    {
        // get a reference to ScriptManager and check if we are in a partial postback
        if (ScriptManager.GetCurrent(this.Page).IsInAsyncPostBack)
        {
            // partial (asynchronous) postback occured
            // insert Ajax custom logic here
        }
        else
        {
            // regular full page postback occured
            // custom logic accordingly                
        }
    }
}