2017-01-12 6 views
0

私はupdatepanelを含むASP.NET Usercontrolを持っています。 updatepanelでポストバックを起動すると、ユーザコントロールを含むページのpage_loadイベントが発生しますが、(updatepanelを使用しないと)通常のようにページはリフレッシュされません。 私はこれが起こるのを止めることができるかどうかを知りたいのですが、もしそうなら、どうしたらいいですか?以下はASP.NETユーザーコントロールの更新パネルがメインページの読み込みを実行させないようにする

は、UpdatePanelのコードです:

<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="testControl.ascx.cs" Inherits="WebApplication1.testControl" %> 

<asp:ScriptManager runat="server" id="smTest"></asp:ScriptManager> 
<asp:UpdatePanel runat="server" ID="updTest" ChildrenAsTriggers="true" UpdateMode="Conditional"> 
    <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="btnTest" /> 
    </Triggers> 
    <ContentTemplate> 
     <asp:Button runat="server" ID="btnTest" Text="test" /> 
    </ContentTemplate> 
</asp:UpdatePanel> 

答えて

0

ポストバックがページのPage_Loadの中のUpdatePanelおよび/またはUserControlによってトリガーされるかどうかをチェックすることができます。しかし、Page_Loadの実行を止めることはできません。

protected void Page_Load(object sender, EventArgs e) 
{ 
    if (ScriptManager.GetCurrent(this.Page).IsInAsyncPostBack) 
    { 
     //updatepanel page load 
    } 
    else 
    { 
     //normal page load 
    } 
} 
+0

完全に感謝します。ページロードを実行しますが、ページロード関数内にメソッドを実装して、問題を解決するのに役立つupdatepanelが使用されているかどうかを知ることができます。 – Anomaly

関連する問題