2014-11-04 56 views
0

這裏的UpdatePanel內是在我的網頁一些代碼:ASP.NET Web窗體文件上傳的ASCX裏面這是在ASPX

<asp:UpdatePanel ID="UpdatePanelEQSelector" runat="server" UpdateMode="Conditional"> 
       <ContentTemplate> 
        <uc12:EQSelector ID="custEQSelector" OnEqChange="custEQSelector_OnEqChange" runat="server" /> 
       </ContentTemplate> 
      </asp:UpdatePanel> 

在我的用戶控制,有人問我添加fileuploader。 簡單地編碼後,我測試了我的文件上傳器總是空的。 我搜索了一段時間,發現這是一個正常的行爲。 使其工作的解決方案是爲updatePanel添加PostBackTrigger

當我在我的aspx頁面中測試它時,我實現了它並且我的fileUploader具有該文件。 然後我試圖將其添加動態(最終做到這一點在我的控制),它與工作:

PostBackTrigger trigger = new PostBackTrigger(); 
     trigger.ControlID = this.btnTest.ID; 
     this._UpdatePanelEQSelector.Triggers.Add(trigger); 

但我不能設法使此代碼工作在我的控制(我通過我的UpdatePanel作爲一個參數給我在負載中的控制集,fileUpload始終是空的)

你看到一個解決方案嗎?

謝謝

回答

1

它是否回發,但保持空白?或者它根本沒有回覆。如果它不回發,我會將這個

ScriptManager.GetCurrent(this).RegisterPostBackControl(btnTest); 

添加到用戶控件的page_load中。

如果它是回發,但控件是空的,那麼我打賭那裏可能是一些不友好的HTML頁面上的某個地方,價值正在迷失。

+0

是的,它確實Postback。現在,我已將我的updatePanel放入我的ascx中,並在ascx中添加了我的PostBackTrigger。它看起來對現有的應用程序行爲沒有影響......感謝您的關注。 – Emilien 2014-11-05 08:34:20

+0

好的,在這種情況下,這將解決您的問題:http://www.dotnetspider.com/resources/29004-A-control-with-ID-button-could-not-be-found.aspx – Jim 2014-11-05 09:36:08