У меня есть элемент управления AjaxFileUpload в usercontrol, который динамически загружается в Postback, проблема в том, что после загрузки файла IsPostBack
является ложным, из-за которого пользовательский контроль не загружен, что вызывает событие OnUploadCompleteAll
не запускается.Событие postback от AjaxFileUpload от usercontrol ASP.NET
Я узнал, что элемент управления AjaxFileUpload имеет свое собственное свойство postback AjaxFileUpload.IsInFileUploadPostBack
, как мне получить доступ к этому свойству с моей главной страницы WebForm1.aspx?
Когда событие запускается из AjaxFileUpload, я хочу проверить IsInFileUploadPostBack
на загрузку страницы WebForm1.aspx, а затем загрузить usercontrol.
вот код.
WebForm1.aspx
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:Button ID="Button1" runat="server" Text="Load Control" OnClick="Button1_Click" />
<asp:PlaceHolder ID="Placeholder1" runat="server" />
</form>
CodeBehind
protected void Page_Load(object sender, EventArgs e)
{
if (IsPostBack)
loadcontrol();
}
protected void Button1_Click(object sender, EventArgs e)
{
}
private void loadcontrol()
{
this.Placeholder1.Controls.Clear();
var _controls = LoadControl("~/WebUserControl1.ascx");
this.Placeholder1.Controls.Add(_controls);
}
WebUserControl1.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="WebUserControl1.ascx.cs" Inherits="AjaxFileUpload_Test.WebUserControl1" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajaxToolkit" %>
<div id="div1">
<ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1" UseAbsoluteHandlerPath="false" OnUploadCompleteAll="AjaxFileUpload1_UploadCompleteAll" OnUploadStart="AjaxFileUpload1_UploadStart" runat="server" />
</div>
Потенциального дубликат: http://stackoverflow.com/questions/14665667/ajaxfileupload-postback-false –
Есть только так много способов сказать «это не может работать описанный « Эта часть невозможна « IsInFileUploadPostBack на загрузке страницы WebForm1.aspx, а затем загрузить пользовательский контроль ». Вы не можете проверить свойство того, что не было загружено. –
Понял ... позволяет сказать, что я хочу проверить свойство в loadcontrol() после загрузки элемента управления, как это сделать? –