第六讲 ASP.NET服务器控件
(二 )
教学目的:
一,DropDownList控件二,ListBox控件三,Image控件四,ImageMap控件教学重点一、掌握 DropDownList控件的使用;
二、掌握 ListBox控件的使用;
三、掌握 Image,ImageMap控件的使用;
四、掌握信息浏览页面设计方法。
一,Image控件
Image控件称为图像(框)控件,用来在页面上展示图片。
(一 )HTML标记
<asp:Image id="Image1" runat="server"
ImageUrl="fileURL ">
</asp:Image>
(二 )常用属性
ImageUrl属性,图片的路径和文件名,可以是绝对路径或相对路径。既然是 URL,这个资源也可能在别的主机上,那时还必须在最前面加上传输协议。
ToolTip属性,当鼠标停留在控件上时显示的提示信息。这个属性对于以图片表现的控件很重要,可能有些读者看不懂图片的含义,或者通过它还可以导航到其他 URL去时
( ImageButton控件),都得需要提示信息的帮助。
AlternateText属性,当图片无法显示时替代显示的文本。
注意:
当向 image控件加载图片时,必须预先在其项目文件夹内添加” image”文件夹,并将图片放入 image文件夹内方可添加图片!
二,ImageMap控件使用此控件可以创建一个能与用户交互的图像,
该图像包含许多用户可以单击的区域,这些区域被称为 作用点 。每一个作用点都可以是一个单独的超链接或回发事件。
ImageMap控件由两个部分组成,图像与作用点控件的集合。 其中,图像可以是任何标准 Web图形格式的图形,如,gif,.jpg或,png图形文件。每个作用点控件都是一个不同的元素。对于每个作用点控件,需要定义其 形状 (圆形、矩形或多边形)以及用于指定作用点的位置和大小的坐标。
ImageMap控件 是图片地图控件,可以用来显示图像,也可以实现图像的超链接。该控件的最大特点是,可以将 ImageMap中的图像按照 (X,Y)坐标划分成不同形状的区域,
分别链接到不同的网页。
ImageUrl属性用来连接图像源文件;
HotSpotMode属性用来获取或设置单击图片后默认的行为方式
NotSet:默认项,链接到指定的 URL地址
Navigate:定向操作,链接到指定的 URL地址
PostBack:回传操作,单击后触发控件的
Click事件。
Inactive:无任何操作,等同于 Image控件
HotSpot属性指定三种类型的作用点:
CircleHotSpots:圆形
RectangleHotSpots:矩形
PolygonHotSpots:任意多边形单击 HotSpot属性右边的省略号按钮,将弹出如图所示的对话框。
三,DropDownList控件
DropDownList控件称为下拉列表,它含有一个项目列表供用户选择,需要在大量项目中选择一项时使用这种控件。
(一 )HTML标记
<asp:DropDownList id="DropDownList1"
runat="server">
</asp:DropDownList>
(二 )常用属性
Items属性,列表中项的集合。构建项目集合有两种方式:使用 ListItem集合编辑器编辑或者在程序代码中创建。
前者用于集合中的项在程序设计阶段就可预知的情况,后者用于需要在程序运行后动态创建的情况。
1.使用 ListItem集合编辑器编辑列表项在 DropDownList控件的属性窗口单击 Items属性名右侧的浏览按钮,打开 ListItem集合编辑器,如下图。
单击 【 添加 】 按钮向集合中依次加入项目,在右侧的杂项列表中为每一项设定文本(例如北京)。单击 【 移除 】
可以撤消当前项,单击 或 可以调整当前项在列表中的上下位置。单击 【 确定 】 完成项目集合的编辑。
2.在 C#程序代码中添加或移除项目
Items属性的 Add方法可以向集合添加一项,如:
DropDownList1.Items.Add("长沙 ");
向控件 DropDownList1追加一个项目“长沙”,。
Items属性的 RemoveAt方法可以从集合中移除一项,例如:
DropDownList1.Items.RemoveAt(0);
从控件 DropDownList1移除第 1项。该方法的参数需要移除项的索引号。
Items属性的 Insert方法可以向集合插入一项,例如
DropDownList1.Items.Insert(1,"武汉 ");
向控件 DropDownList1插入一个项目“武汉”。方法的第一个参数指明插入项的索引号,第二个参数是项目的内容。
Items属性的 Clear方法清空集合中的所有项。例如
DropDownList1.Items.Clear();
将使控件 DropDownList1中没有任何项目。
方法举例!
Items属性的 Count属性获取集合中的项目数。
它的值比最后一项的索引号大 1。
DataSourceID属性,控件项目列表的数据源,
一般将它指定到一个数据集。
DataMember属性,控件项目列表要绑定到的数据表,它是 DataSource指定的那个数据集的某个数据表。
DataTextField属性,提供项目列表的文本字段,
它是 DataMember指定的那个数据表的某个文本字段。
例如要将控件 DropDownList1绑定到数据集
dataSet11的数据表 memberInfo的“账号”字段,
在属性窗口中的设置方法如下图。
SelectedIndex属性,控件中被选择项的索引号。
该属性值从 0开始,若未选中一项,值为 -1;
当选定多项时,值为最先出现的那一项。
SelectedItem属性,控件中被选择的项。它还有下一级的属性 Text,通常使用这个值。例如
DropDownList1.SelectedItem.Text就是控件
DropDownList1中被选中的那一项的文本。
当选定多项时,值为索引最小的那一项
(三 )常用事件
SelectedIndexChanged方法,当控件内的选择项发生改变后激发。通常需要为这个事件编写事件处理程序代码,因为当用户改变了选择后,必定要处理这个改变。
使用 DropDownList控件的几个要点:
● 程序运行后,用户只能在控件内选择,不可以在控件内输入。
● 可以使用设置 Items属性和绑定数据两种方式来控制控件内的项目,这是两个不同的范畴,不能混为一谈。例如控件中的项目来自一个数据源,你就不可以使用 Items的方法
(例如 Add方法)来操作控件内的项目,这时你必须去控制数据源来改变控件内的项目。只有当控件的项目来自 Items属性时,才可以使用 Items的方法(例如 Add方法)和属性(例如
Count属性)来操作属性。一般来说,使用 Items属性控制项目可能更灵活一点。
若要判断用户选择了哪一项,请获取 SelectedIndex
属性,若要知道选择项的文本,请使用
SelectedItem.Text属性,使用后者的情况可能更多一些。
如果为控件的 SelectedIndexChanged事件编写了事件处理程序,请将控件的 AutoPostBack属性改为 true,否则该事件不会回传,事件发生后代码不会被执行 。
四,ListBox控件
ListBox控件称为列表框,将一系列的项目列表出来供用户选择。列表框是不可收缩的,允许一次选择多项。除此之外,
ListBox控件与 DropDownList控件大多数的属性和事件是相同的,使用方法也基本相同。
(一 )HTML标记
<asp:ListBox id="ListBox1" runat="server"></asp:ListBox>
(二 )常用属性
SelectionMode属性,列表的选择模式,其值可为
Single(单选,默认 )和 Multiple(多选)。
当采用单选模式时,获取选择项的序号仍然利用其
SelectedIndex属性,获取选择项的文本仍然利用
SelectedItem.Text属性。采用多选模式时,若还使用这两个属性来判断,得到的是多个选择项中第一个被选项的索引号或文本。为了得到多个选择项,请使用循环依次检查 Items集合中每一个项目的 Selected属性,为 true的那一项被选中。
具体方法参见 C#课本 ListBox中相关章节