第十四讲 GridView数据绑定控件(一)

来源:互联网 发布:苹果mac怎么激活 编辑:程序博客网 时间:2024/05/18 09:14
主要内容
    能够熟练使用GridView进行数据查询与展示
    1. 通过GridView控件,我们可以显示编辑和删除多种不同的数据源(如:数据库,XML文件和公开数据的业务对象)中的数据

    2. GridView是ASP.NET当中非常强大的数据展示控件

    3. GridView控件是DataGrid控件的后继控件,更加强大

    注意:使用GridView控件呈现表数据,需要进行两步,一步是指定数据源,二步是绑定数据源。这是跟Winform程序中的DataGridView最明显的不同之处。

    实例操作,使用三层架构的思想进行。
    1. 创建数据库中的表在实体项目(以Model为后缀名的项目)中的实体类,实体类名以表名来命名,如:XXX.cs
    2. 创建在数据访问层项目(以DAL为后缀名的项目)中的类,在这个项目中,需要创建一个辅助类,此公共辅助类作用是,统一的方法对数据库进行访问,也叫工具类,不确定的因素以参数带入,如SQL语句,参数个数,数据集对象等,返回值大多是,整型(以增删改更新为相关,如ExecuteScaler,ExecuteNoneQuery等),数据集DataSet,数据流SqlDataReader(以查寻为主)等。
    数据访问层中类名,以Service为后缀,如:XXXService.cs
    3. 创建业务逻辑层项目(以BLL为后缀的项目),此层以协调表示层与数据访问层。类名以Manager为后缀,如XXXManager.cs
    4. 表示层,如WinForm或ADO.NET

    GridView控件的详细讲解:
    1. 自定义列,每个字段代表着特定的功能
        1. BoundField,显示在GridView列标题处的信息,相当于一个Label
            每个BoundField代表着数据库中的一个字段
            HeaderText 列头标题
            DataField 对应数据库的物理字段
            注意:如果要使用上面的属性,且不再以数据表的物理字段名显示,需要关闭GridView控件一个属性(AutoGenerateColumns:是否基于关联的数据源自动生成列)。

        2. CheckBoxField 在页面的GridView内部以CheckBox形式显示
        3. HyperLinkField 在页面的GridView内容超连接的形式显示
        4. ImageField
        5. ButtonField
        6. CommandField

        注意:以上六个字段都代表一种功能的应用,如BoundField,它的功能只是用来以Label标签的形式显示在列头位置。

        但是,注意但是,如果前六个字段无法实现某一特定功能的时候,就用到了TemplateField这个字段。当前六个字段无法完成某一特定功能是,可以将其转换为TemplateField字段。

        这个TemplateField字段是当前GridView控件中一个非常重要的模板字段。它能完成一些任何我们所需要完成的事件

        当将前六个字段中的某字段转换成TemplateField字段后,确定。再进入编辑模板选项就可以看到相应的变化了。

        点击编辑模板,打开模板编辑模式,在"显示"这个下拉列表中,系统默认给提供了五个模板(以细斜体显示的)。这五个模板都它特殊的功能:
            1. Item Template 项模板(指GridView内部某列中的每一项的模板)
                它本质也确实是使用Label控件进行显示的。
                注意当这个Label控件到了这里,它就有了一个智标签-->DataBindings,可以点击打开进行其项的设置。
                可绑定的属性有:
                    Enable
                    Text
                        在这个属性下的自定义绑定项中,它使用一个Bind()方法,绑定了一个数据库的物理字段:Bind("数据库物理字段名")。
                        注意:GridView控件提供了两种数据绑定方法:
                            Bind(" ") 双向绑定(即能显示到控件,又能将控件的值反写到数据库中)

                            Eval(" ") 单向绑定(即只用于向控件显示绑定的内容信息),Eval方法还有个特色功能,即它可以对绑定的数据类型进行转换。

                            所以,如果只想显示数据的话,建议使用Bind()方法,如果想对数据进行特殊处理的话,建议使用Eval()方法。

                    Visible

            2. AlternationItem Template 交替项模板(同样针对是某列在GridView控件内部,每隔一行套用一次该模板)
            3. EditItem Template 编辑模板(本节未讲,后续补充)
            4. Header Template 头模板(即修改了列标题)
            5. Footer Template 脚模板(后续补充)

    2. 截取字符串的两种方式
        1. subString()
        2. CSS样式操作





0 0