服务器端asp.net中的同步调用事件 [英] Synchronous call event in server side asp.net

查看:65
本文介绍了服务器端asp.net中的同步调用事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要在我的asp.net Web表单页面中对服务器端事件进行同步调用。我希望当我调用服务器事件时,asp.net阻止页面中的其他操作等待响应。有可能还是有框架可以做到这一点!?



谢谢!

解决方案

每台服务器会外活动意味着重新加载页面,所以你应该没事。



如果你有部分页面更新,那么你必须这样做:

在你的来电控制中,可能是按钮,添加OnClientClick =doModal()



  function  doModal(){

// 用黑色覆盖整个屏幕, 0.8透明div具有高z-index
// 以background为中心放置一个面板一些消息告知用户发生了什么

// 做你的ajax致电

// 完成后,清除海湾r

}





替代解决方案是使用这样的ajaxToolkit:

 <   ajaxToolkit:ModalPopupExtender     ID   =  mpeProgress    runat   =  server    TargetControlID   =  pnlProgress  

PopupControlID = pnlProgress BackgroundCssClass = modalBackground DropShadow = true / >

< asp:panel id = pnlProgress runat = server style = background-color:#EEEEEE; display:none;< br mode = hold = /> width:400px xmlns:asp = #unknown >
< div style = padding:28px;身高:80px; text-align:center >
正在加载,请等待
< asp:image id = imgWait runat = server imageurl = 〜/ images / indicator-big.gif borderwidth = 0px / >
< / div >
< / asp:panel >


Hi, i need to do synchronous call to server side events in my asp.net web forms pages. I want that when I call server event asp.net blocks other actions in page waiting the response. Is it possible or there is a framework to do this !?

Thanks!

解决方案

Every server side event means reloading the page so you should be fine.

If you have partial page update then you have to do it like this:
In your caller control, probably button, add OnClientClick="doModal()"

function doModal() {

// cover whole screen with black, 0.8 transparent div with high z-index
// centered over background div put a panel with some message informing the user what is going on

//do your ajax call

// on finish, clear the cover

}



Alternate solution is to use ajaxToolkit like this:

<ajaxToolkit:ModalPopupExtender ID="mpeProgress" runat="server" TargetControlID="pnlProgress"

    PopupControlID="pnlProgress" BackgroundCssClass="modalBackground" DropShadow="true" />

    <asp:panel id="pnlProgress" runat="server" style="background-color: #EEEEEE; display: none;<br mode=" hold=" />        width: 400px" xmlns:asp="#unknown">
        <div style="padding: 28px; height: 80px; text-align: center">
Loading, please wait
                            <asp:image id="imgWait" runat="server" imageurl="~/images/indicator-big.gif" borderwidth="0px" />
        </div>
    </asp:panel>


这篇关于服务器端asp.net中的同步调用事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆