Я искал эту проблему, но вопросы, которые уже по этому вопросу не помогают мне. Прежде всего, я ныряю в район Аякса и не очень хорошо знаком с ним. Я создал очень простой WebUserControl, который в основном представляет собой контактную форму. HTML для пользовательского элемента управления естьСтатическое содержимое UpdatePanel исчезает после частичной обратной передачи
<telerik:RadAjaxManagerProxy ID="AjaxManagerProxy1" runat="server">
<AjaxSettings>
<telerik:AjaxSetting AjaxControlID="btnSubmitContactForm">
<UpdatedControls>
<telerik:AjaxUpdatedControl ControlID="upContactForm" LoadingPanelID="RALP_ContactForm" />
</UpdatedControls>
</telerik:AjaxSetting>
</AjaxSettings>
</telerik:RadAjaxManagerProxy>
<telerik:RadAjaxLoadingPanel ID="RALP_ContactForm" runat="server" Transparency="5">
<img src="images/cf_animation.GIF" alt="Processing Request..." />
</telerik:RadAjaxLoadingPanel>
<asp:UpdatePanel ID="upContactForm" runat="server">
<ContentTemplate>
<div id="form-main">
<div id="form-div">
<p class="name">
<asp:TextBox ID="txtContactName" runat="server"></asp:TextBox>
</p>
<p>
<asp:TextBox ID="txtContactEmail" runat="server"></asp:TextBox>
</p>
<p>
<asp:TextBox ID="txtContactComment" TextMoe="MultiLine" runat="server"></asp:TextBox>
</p>
<p><asp:Label ID="lblMessage" runat="server" Visible="false"></asp:Label></p>
<div>
<asp:Button ID="btnSubmitContactForm" runat="server"
Text="SEND" OnClick="btnSubmitContactForm_Click" />
</div>
</div>
</div>
Как вы можете видеть, что управление очень простое. Я вызываю элемент управления на своей главной странице,
<uc1:FooterContactForm ID="FooterContactForm" runat="server"></uc1:FooterContactForm>
Теперь он функционирует абсолютно нормально, когда он отображается. Когда я нажимаю кнопку «ОТПРАВИТЬ», тогда загружается изображение, и содержимое на стороне сервера отправляется по электронной почте мне.
Когда этот процесс завершен, внезапно исчезает нижний колонтитул. Это не только в случае пользовательского контроля, но когда я внедрил его без пользовательского контроля, содержимое UpdatePanel исчезнет. Когда я помещаю следующую строку кода после отправки электронной почты на стороне сервера, содержимое становится видимым и не исчезает.
upContactForm.Update();
Это заполняет проблему исчезновения контактной формы. Но когда я пытаюсь сбросить TextBox, это дает мне ошибку, что для обновления панели обновления мне нужно установить UpdateMode в условное. Когда я устанавливаю условие UpdateMode на условие, ошибка исчезает, но контактная форма снова исчезает после обратной передачи.
Эксперты любезно помогают мне в этом, поскольку я не знаю, что здесь происходит.
я узнал, что UpdatePanel исчезает из-за AjaxManager на родительской странице. Когда я удаляю AjaxManager с родительской страницы, тогда управление не исчезает, но изображение загрузки через RadAjaxLoadingPanel не отображается. Почему AjaxManager делает это? –