小叙UpDataPanel~~

为什么要使用UpDataPanel,简单来说,就是为了节省流量,减少相应时间,因为UpdataPanel是一个异步更新控件,对其中的内容进行异步传输,不需要回传(PostBack)整个页面!

 

大家先去简明了解一下UpDataPanel的各个属性作用吧(打开VS,拖个UpDataPanel进页面,在属性窗口就可以了解属性作用了)。添加UpDataPanel控件之前,必须先添加ScriptManager控件,并且 ScriptManager控件的EnablePartialRendering属性设置为True。

哪UpDataPanel到底在什么时机下会更新呢?

1)如果UpDataPanel控件的UpDataMode属性设置为Always(默认),则在页面上任何一处所引发的回调(PostBack)都会使得UpDataPanel控件的内容被更新,这包括位于UpDataPanel控件内部的控件所引发的异步回调以及位于UpDataPanel控件外部的控件所引发的回调。对于多个UpDataMode=true的UpDataPanel嵌套,原理亦如此。

2)如果UpDataPanel控件的UpDataMode设置为Condition,则该UpDataPanel控件需要触发器(Triggers)或显示调用该UpDataPanel控件的UpData()方法来更新控件内容。其中Triggers可以从以下两种方式获得:(1)定义UpDataPanel控件的属性ChildrenAsTriggers为true,亦即把UpDataPanel控件内的全部子控件均定义为触发器;(2)显示定义Triggers,在UpDataPanel控件的属性的Triggers集合中可自定义触发器,其中触发器可指定内部子控件或者来源于外部控件。

无论是单个UpDataPanel控件还是其的嵌套,均适用于这两条条件!

现在说说Trigger的两种类型:AsyncPostBackTrigger和PostBackTrigger。这两种触发器的区别在于,AsyncPostBackTrigger会使得位于UpDataPanel控件之内或之外的控件事件去引发异步回送并局部更细该UpDataPanel控件的内容,然而,如果你希望在UpDataPanel控件内的控件会引发整个页面回送并使得整个页面刷新,则应该使用PostBackTrigger触发器!

 

(P.S:写本文只为大家共同学习,如有错误,望指出,大家学习共同进步。如有问题,也能在此提出,大家一起解决,谢谢!)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值