首 页
|
新闻资讯
|
视频教程
|
电脑入门
|
程序开发
|
网页制作
|
操作系统
|
设计在线
|
办公软件
|
网络安全
|
常用软件
|
认证考试
撰写ScriptManager来管理客户端指令码
[b]摘要[/b] 一般在注册客户端指令码都是使用 Page.ClientScript 属性,不过当 ASP.NET AJAX 出来后,有使用 UpdatePanel 时就需要改用 ScriptManager 来取代部分注册客户端指令码的动作。不过这样有时要使用 ClientScript,有时要使用 ScriptManager 来管理客户端指令码,感觉有点麻烦。而且不知那天又会有 ASP.NET AJAX 2 跑出来,是否又会有新的 ScriptManager2,到时是不是又要改写部分注册客户端指令码的程序代码呢? [b]撰写自用的 ScriptManager[/b] 当有使用 ASP.NET AJAX 时,一定要使用 ScriptManager 来注册客户端指令码;可是又不能完全不用 ClientScript,因为有些方法(例如 GetPostBackEventReference 方法) 在 ScriptManager 并不提供。 所以我们要撰写自用的 ScriptManager 来统一管理客户端指令码的所有方法,我们将撰写 TBScriptManager 类别,整合原来 ClientScript 及 ScriptManager 所提供的方法,然后 BasePage 新增一个 BeeScript 属性来操作 TBScriptManager 对象。 [img]http://img.maicoo.com/edu/2008-8/1/image_thumb.png[/img] 首先我们要新增 TBScriptManager 类别,建构函式需传入 Page 对象,其中会包含 ScriptManager 有提供的方法,例如 RegisterStartupScript、RegisterClientScriptBlock ... 等方法,也会包含 ClientScript 有提供的方法,例如 GetPostBackEventReference、GetPostBackClientHyperlink ... 等方法。这里只例举出部分的方法,其它 ScriptManager 及 ClientScript 方法可以使用相同方式实现。 [code] 1Imports System.Web.UI 2 3/**/'''
4''' 客户端指令码管理。 5'''
6Public Class TBScriptManagerClass TBScriptManager 7 Private FPage As System.Web.UI.Page 8 9 /**/'''
10 ''' 建构函式。 11 '''
12 '''
Page 物件。 13 Sub New()Sub New(ByVal Page As System.Web.UI.Page) 14 FPage = Page 15 End Sub 16 17 /**/'''
18 ''' 注册启始客户端指令码。 19 '''
20 '''
索引键。 21 '''
客户端指令码。 22 '''
表示是否加入指令码标记。 23 Public Sub RegisterStartupScript()Sub RegisterStartupScript(ByVal Key As String, ByVal Script As String, Optional ByVal AddScriptTags As Boolean = True) 24 ScriptManager.RegisterStartupScript(FPage, FPage.GetType(), Key, Script, AddScriptTags) 25 End Sub 26 27 /**/'''
28 ''' 注册客户端指令码。 29 '''
30 '''
索引键。 31 '''
客户端指令码。 32 '''
表示是否加入指令码标记。 33 Public Sub RegisterClientScriptBlock()Sub RegisterClientScriptBlock(ByVal Key As String, ByVal Script As String, Optional ByVal AddScriptTags As Boolean = True) 34 ScriptManager.RegisterClientScriptBlock(FPage, FPage.GetType, Key, Script, AddScriptTags) 35 End Sub 36 37 /**/'''
38 ''' 注册页面 OnSubmit 的客户端指令码。 39 '''
40 '''
索引键。 41 '''
客户端指令码。 42 Public Sub RegisterOnSubmitStatement()Sub RegisterOnSubmitStatement(ByVal Key As String, ByVal Script As String) 43 ScriptManager.RegisterOnSubmitStatement(FPage, FPage.GetType, Key, Script) 44 End Sub 45 46 /**/'''
47 ''' 注册客户端指令码 Include。 48 '''
49 '''
索引键。 50 '''
客户端指令码 Include URL。 51 Public Sub RegisterClientScriptInclude()Sub RegisterClientScriptInclude(ByVal Key As String, ByVal Url As String) 52 ScriptManager.RegisterClientScriptInclude(FPage, FPage.GetType, Key, Url) 53 End Sub 54 55 /**/'''
56 ''' 取得引发 PostBack 的客户端指令码(其开头附加了 javascript:)。 57 '''
58 '''
控件。 59 '''
参数。 60 '''
事件是否进行验证。 61 Public Function GetPostBackClientHyperlink()Function GetPostBackClientHyperlink(ByVal Control As Contr
阅读全文:http://x8.MaiCoo.com/tech/net/18052.html
发表时间:2008-8-1 8:36:40 讨论数:0
暂无讨论组成员发表!
昵 称
:麦客网友[游客] 如果您不想匿名评论请先
登录
或
注册
!
评 论
:请自觉遵守互联网相关政策法规,管理员有权删除恶意评论、广告和违禁词语。
验证码:
热门讨论文章
1170次
一步一步教你如何重装XP系统(超详细)
122次
Windows XP系统重装详细视频教程
58次
vb.net基础教程
49次
Visual Basic 6.0(VB)入门到精通视频教程
22次
ASP与数据库连接方法
21次
Photoshop精细磨皮去斑教程
20次
Photoshop制作“红心中国”QQ头像
19次
Windows操作系统太慢 重装不如更换帐户
16次
vb. net介绍
13次
Photoshop移花接木:照片换脸术
Copyright © 2008
MaiCoo.Com
All Rights Reserved
浙ICP备06017818号