用户控件是能够在其中放置标记和 We b 服务器控件的容器。然后,可以将用户控件作为一个单元对待,为其定义属性和方法。
控件类型
控件名称
用途
D l B o o k.a s c x
D l B o o k
显示“新书上架”栏目信息
D l H o t
显示“热点推荐”栏目信息
D l C l a s s i c
显示“经典书目”栏目信息
S q l D a t a S o u r c e
S q l d s B o o k
“新书上架”数据源 S q l d s H o t
“热点推荐”数据源 S q l d s C l a s s i c
“经典书目”数据源
A S P.N E T We b用户控件与完整的A S P.N E T 网页(.a s p x文件)相似,同时具有用户界面页和代码。可以采取与创建A S P.N E T 页相似的方式创建用户控件,然后向其中添加所需的标记和子控件。用户控件可以像页面一样包含对其内容进行操作(包括执行数据绑定等任务)的代码。用户控件与A S P.N E T 网页有以下区别:
用户控件的文件扩展名为.a s c x。
用户控件中没有@ P a g e指令,而是包含@ C o n t r o l指令,该指令对配置及其他属性进行定义。
用户控件不能作为独立文件运行。而必须像处理任何控件一样,将它们添加到A S P.N E T 页中。用户控件中没有h t m l、b o d y或f o r m元素。这些元素必须位于宿主页中。
4.创建D l B o o k.a s c x
我们将创建用户控件D l B o o k.a s c x,并在其中放置绑定数据源的控件D a t a L i s t,该D a t a L i s t控件用于显示栏目前四位的图书:
在解决方案资源管理器中右击网站We b,选择“新建文件夹”项,将文件夹命名为U s e r C t r l。
右击文件夹U s e r C t r l,选择“添加新项”菜单项,在弹出的对话框的模板窗格选择“We b用户控件”,将控件命名为“D l B o o k.a s c x”,点“确定”按钮创建该控件。
5.在首页中应用母版页及用户控件
(1)应用母版页:在网站We b中添加新项,模板类型选择We b窗体,命名为D e f a u l t.a s p x,勾选“选择母版页”复选框,在弹出的“选择母版页”对话框中选择M a s t e r P a g e.m a s t e r。点击“确定”按钮。
图1-41勾选“选择母版页”
图1-42选择母版页
(2)应用We b用户控件:切换到首页的设计视图,在解决方案资源管理器里将U s e r C t r l文件中的D l B o o k.a s c x控件拖放到首页的相应位置,在本实例中应拖放三次,用来显示三个栏目的前四位图书信息。
拖放完成后将在页面自动生成<%@R e g i s t e r s r c="U s e r C t r l/D l B o o k.a s c x" t a g n a m e="D l B o o k"t a g p r e f i x="u c1"%>及等,如果不用拖放的方法,也可以直接在源视图中将上面生成的语句添加到H T M L代码中,以完成We b用户控件的调用。
(3)从工具箱拖放三个S q l D a t a S o u r c e控件做为数据源备用。
6.D e f a u l t.a s p x.c s代码实现
p r o t e c t e d v o i d P a g e_L o a d(o b j e c t s e n d e r,E v e n t A rg s e)
{
i f(!I s P o s t B a c k)
{
D l B o o k.S q l d s=S q l d s B o o k;//绑定数据源为新书上架栏目信息
D l H o t.S q l d s=S q l d s H o t;//绑定数据源为热点推荐栏目信息
D l C l a s s i c.S q l d s=S q l d s C l a s s i c;//绑定数据源为经典书目信息
//D e f a u l t.a s p x是默认的登录页,当匿名用户访问需要身份验证的网页时,会自动跳转到该页登录,使用以下代码片断显示要求登录的提示信息i f(R e q u e s t.U r l.A b s o l u t e U r i.To St r i n g().C o n t a i n s("R e t u r n U r l")&& R e q u e s t.U r l.A b s o l u t e U r i.To S t r i n g().C o n t a i n s("a d m i n"))
t h i s.C l i e n t S c r i p t.R e g i s t e r S t a r t u p S c r i p t(t h i s.G e t Ty p e(),"", "w i n d o w.a l e r t('您尚未以管理员身份登陆,请登陆后进行此操作!')");
e l s e i
f (R e q u e s t.U r l.A b s o l u t e U r i.To S t r i n g().C o n t a i n s("R e t u r n U r l"))
{
t h i s.C l i e n t S c r i p t.R e g i s t e r St a r t u p S c r i p t(t h i s.G e t Ty p e(),"", "w i n d o w.a l e r t('您尚未以会员身份登陆,请登陆后进行此操作!')");
}
}
}
5.4按栏目或者图书类别显示图书概要信息
1.图书概要页B o o k B r e i f效果图
图1-43图书概要页B o o k B r i e f.a s p x
2.B o o kB r i e f.a s p x页面中各个控件的属性设置及其用途

