任务5. 1 图书信息管理界面设计
【任务描述】
每一个实用的网站系统都会有一个后台,后台的主要功能是实现对系统信息和基础信息的管理。因此,后台功能一般不会开放给用户,只有具有更高权限的管理员才能使用后台。图书信息管理功能是网上书店系统的典型后台功能之一,该功能用于维护图书信息以保证图书信息的正确性和一致性,包括修改已有图书信息和删除过期图书信息等。当然,要想对图书批量信息进行操作,首先要将批量信息显示出来,后台图书信息管理页面如图5.1所示。
图5.1图书信息管理页面
在制作后台图书管理页面时,主要用到的是GridView数据控件,数据控件一般都能在VS 2008集成开发环境的“工具箱”面板的“数据”控件组中找到。GridView控件也称为网格控件,它是一种最为常用的数据控件,不仅能用表格的形式显示批量数据,还集成了对批量信息的操作界面和事件处理,下面首先对GridView数据控件的特征和行为方式进行介绍。
【知识准备】
(1)数据绑定
数据绑定是一种把内存数据(数据源)与用户界面(UI)元素(主要指控件)进行关联的通用机制,是在应用程序的UI与业务逻辑之间建立联系的过程。当数据源发生改变时,与该数据源绑定的UI元素会自动反映此改变;另一方面,如果UI元素接收用户操作,使其显示信息发生改变,则与之绑定的数据源也会自动同步更新。总之,进行了绑定的UI元素与数据源的状态会一直保持同步和一致。
所有的Web控件都可以进行数据绑定,从数据流的大小上看数据绑定可以多记录绑定和单值绑定,从数据的流向上看数据绑定可以分为单向绑定和双向绑定。
1)多记录绑定和单值绑定
通过多记录绑定UI元素能同时显示多个数据记录,通过单值绑定UI元素则只能显示一个数据值。多记录绑定和单值绑定的工作方式是:多记录绑定需要将基于列表的控件作为UI元素,列表类控件(如ListBox和DropDownList)和数据控件(GridView等)都属于此类,这类控件能够直接与包含多个记录的数据源关联,只需数据源实现IEnumerable接口,这类控件的绑定方式是依次关联数据源中的每一条数据记录。
单值绑定则是将单个数据与UI元素的单值属性进行关联,一般情况下,数据会和显示属性(如Text属性)绑定。同时,数据也能与非显示属性(如Value属性)绑定。所有的Web控件都允许进行单值绑定,例如,作为数据控件的GridView既可以进行多记录绑定,也能够绑定到单个数据,如BackColot(背景颜色)属性。
2)双向绑定和单向绑定
既然数据绑定是将UI元素和数据源相关联而使两者保持数据的一致和同步,数据的流向从理论上讲应该是双向的,即当数据源发生变化时,数据应该流向UI元素,使UI元素同步变化;另一方面,当UI元素内的数据因用户操作发生变化时,数据应该回流数据源,使数据源也保持一致。而在实际应用中,除了有上述的双向数据绑定,还有只能从数据源流向UI元素的单向数据绑定,单向数据绑定一般用于直接的数据显示,当数据源的数据流向了UI元素后,由于没有数据回流,数据源在此处就不再需要,因此,单向数据绑定时,可使用临时数据对象作为数据源,如在程序中定义的局部DataTable或DataView对象等。
(2)实现单值绑定
为了能更好地理解单值绑定,这里将可以用于单值绑定的常见属性列举如下:
①Text属性:用于设置TextBox,Label等控件的文本显示。
②Href属性:用于设置HyperLink等控件的跳转目标地址。
③Check属性:用于设置CheckBox等控件的选中状态。
④ImageUrl属性:用于设置Image等控件的图像文件来源地址。
⑤Font属性的子属性(如Color、Type、Size等):用于设置控件的颜色、字体和大小。
要实现单值绑定需要使用特殊的绑定表达式,通过计算该表达式能够获得所绑定数据的值,然后表达式的计算结果被分配给控件属性。绑定表达式的语法是:<%#expression%>,其中,expression是编程语言(如C#)的表达式或变量。
通过绑定表达式实现单值绑定可以分为两个步骤进行:
①在HTML代码中直接编写绑定表达式
例如,如果在页面的后台代码文件中定义了一个整型成员变量intExpr,并在Page_Load方法中将其初始化为100。将intExpr的值绑定到文本框控件TextBox1的Text属性HTML代码为: