`
f002489
  • 浏览: 273087 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

数据绑定控件----DataSource属性

    博客分类:
  • C#
 
阅读更多
http://pin5i.com/showtopic-21778.html

  

数据绑定控件,都有DataSource属性,用于指定数据源。通常情况下,也是比较常用的就是数据源是数据表(DataTable),其实DataSource的范围很广,我们可以在深入研究的同时,改善我们的程序。

  有的时候,你在编程进入一定阶段,进一步提升很困难的境况之下,不妨回过头来看看基础的东西,或许你会有新的受益,或许能够真正的体会到孔夫子所谓的“温故而知新”的真正内涵。

      常用的数据绑定控件有:Repeater、DataList、GridView、DetailsView等,在这里我拿Repeater来简单说明问题。

   使用该属性指定用来填充 Repeater 控件的数据源。DataSource 可以是任何 System.Collections.IEnumerable 对象,

  如用于访问数据库的 System.Data.DataView、System.Collections.ArrayList、System.Collections.Hashtable、数组或 IListSource 对象。

  常用的数据源:

  一个 DataTable

  一个 DataView

  一个 DataSet

  任何实现 IListSource 接口的组件

  任何实现 IList 接口的组件

注意:

  若要绑定到对象的强类型数组,该对象类型必须包含公共属性。



下面通过几个简单的实例来介绍DataSource的具体应用。



<1>绑定DataTable,一般都是从数据库取出数据,然后直接进行绑定,具体的数据库操作的逻辑不再提供。想必大家都已经非常熟悉。绑定DataView与这个类似。     private void BindData()

    {

        //通过业务逻辑,直接调用数据库中的数据

        DataTable nTable = getTable();



        Repeater1.DataSource = nTable;

        Repeater1.DataBind();

    }

复制代码Html代码

Repeater             <asp:Repeater ID="Repeater1" runat="server">

                <HeaderTemplate>

                    <table>

                        <tr>

                            <th scope="col">

                                姓名</th>

                            <th>

                                年龄</th>

                        </tr>

                </HeaderTemplate>

                <ItemTemplate>

                    <tr>

                        <td>

                            <%#Eval("Key") %>

                        </td>

                        <td>

                            <%#Eval("value") %>

                        </td>

                    </tr>

                </ItemTemplate>

                <FooterTemplate>

                    </table></FooterTemplate>

            </asp:Repeater>

复制代码<2>绑定Array、ArrayList、List、一维数组之类,里面存储简单的数据。

ArrayList     private void BindData()

    {

        ArrayList list = new ArrayList();

        list.Add("Jim");

        list.Add("Tom");

        list.Add("Bluce");

        list.Add("Mary");



        Repeater1.DataSource = list;

        Repeater1.DataBind();

    }

复制代码Html适当改变         <asp:Repeater ID="Repeater1" runat="server">

            <HeaderTemplate><table><tr><th scope="col">姓名</th></tr></HeaderTemplate>

            <ItemTemplate><tr><td><%#Container.DataItem %></td></tr></ItemTemplate>

            <FooterTemplate></table></FooterTemplate>

        </asp:Repeater>

复制代码<3>绑定Dictionary、HashTable

Dictionary     private void BindData()

    {

        Dictionary<string, int> dic = new Dictionary<string, int>();

        dic.Add("Jim", 21);

        dic.Add("Tom", 26);

        dic.Add("Bluce", 33);

        dic.Add("Mary", 18);



        Repeater1.DataSource = dic;

        Repeater1.DataBind();

    }

复制代码Html代码         <asp:Repeater ID="Repeater1" runat="server">

            <HeaderTemplate><table><tr><th scope="col">姓名</th><th>年龄</th></tr></HeaderTemplate>

            <ItemTemplate><tr><td><%#Eval("Key") %></td><td><%#Eval("value") %></td></tr></ItemTemplate>

            <FooterTemplate></table></FooterTemplate>

        </asp:Repeater>

复制代码<4>绑定对象集合,IList等。这个很是有用,在我们进行数据查询的时候,经常从数据库取出数据,为了方便操作,需要封装成对象,但是有的时候需要将这些对象以列表的形式显示出来,一种解决方案:对象转换为DataTable,另一种就是直接调用数据库。这两种方案,并不是很理想。而这里直接将对象集合直接绑定到数据显示控件,给我指明一条出路。其实,在PetShop4.0就是利用这一点,绑定ICollection或者IList。简单明了。

一个简单的用户类,包含两个公共属性。

User using System;

using System.Data;



/// <summary>

/// Summary description for User

/// </summary>

public class User

{

    private string _Name;

    public string Name

    {

        get { return _Name; }

        set { _Name = value; }

    }

    private int _Age;

    public int Age

    {

        get { return _Age; }

        set { _Age = value; }

    }

    public User()

    {

        //

        // TODO: Add constructor logic here

        //

    }

    public User(string name,int age)

    {

        _Name = name;

        _Age = age;

    }

}

复制代码绑定对象集合:

IList     private void BindData()

    {

        User user1 = new User("Jim", 21);

        User user2 = new User("Tom",23);

        User user3 = new User("Bluce",33);

        User user4 = new User("Mary",18);



        IList<User> list = new List<User>();

        list.Add(user1);

        list.Add(user2);

        list.Add(user3);

        list.Add(user4);





        Repeater1.DataSource = list;

        Repeater1.DataBind();

    }

复制代码对应的Repeater绑定对象的公共属性: <asp:Repeater ID="Repeater1" runat="server">

                <HeaderTemplate>

                    <table>

                        <tr>

                            <th scope="col">

                                姓名</th>

                            <th>

                                年龄</th>

                        </tr>

                </HeaderTemplate>

                <ItemTemplate>

                    <tr>

                        <td>

                            <%#Eval("Name") %>

                        </td>

                        <td>

                            <%#Eval("Age") %>

                        </td>

                    </tr>

                </ItemTemplate>

                <FooterTemplate>

                    </table></FooterTemplate>

            </asp:Repeater>

复制代码
分享到:
评论

相关推荐

    用ASP.NET实现数据绑定控件--自定义分页

    在ASP.NET中,数据绑定控件是用于展示和操作数据的核心组件。它们简化了与数据库交互的过程,并提供了直观的用户界面。本篇文章将深入探讨如何使用ASP.NET来实现数据绑定控件的自定义分页功能。 一、数据绑定控件...

    C#使用数据绑定控件录入数据

    4. DataSource属性:每个数据绑定控件都有DataSource属性,用于指定数据源。例如,`dataGridView1.DataSource = myDataTable;` 这行代码将数据网格视图与数据表连接。 5. DisplayMember和ValueMember属性:对于...

    ASP.NET 2.0 的数据源、数据绑定控件概述与区别

    数据源控件和数据绑定控件之间的关联是通过数据绑定机制实现的,数据绑定控件可以通过设置其 DataSource 属性指向一个数据源控件实例,然后通过调用 DataBind 方法来填充控件中的数据。 例如,`GridView` 控件可以...

    数据源控件与数据绑定控件

    数据源控件与数据绑定控件是Web开发中用于展示和操作数据的关键组件,主要应用于ASP.NET框架。这些控件简化了数据从数据库或其他数据源到用户界面的传输和显示过程。下面将详细阐述这两个概念及其相关知识。 一、...

    asp.net 数据绑定控件

    ASP.NET 数据绑定控件是Web开发中用于展示和操作数据的核心组件,它们简化了与数据库或其他数据源交互的过程。在ASP.NET框架中,数据绑定提供了一种声明式的方式来将控件(如GridViews、ListViews、DataLists等)与...

    WINDOWS FORMS 2.0数据绑定--.NET智能客户端数据应用程序设计(英文pdf)

    2. **数据绑定模型**:书中可能会介绍.NET的数据绑定模型,包括单向绑定、双向绑定以及如何通过DataSource属性和DataMember属性进行设置。 3. **控件绑定**:Windows Forms提供了多种可以绑定数据的控件,如...

    asp.net 数据绑定控件实例

    在实际项目中,开发者可以通过DataSource属性设置数据源,DataSourceID属性引用一个已配置的数据源控件,如SqlDataSource或ObjectDataSource。 在ASP.NET练习1的文件中,可能包含了这些控件的具体实现示例,包括...

    VB数据控件及控件绑定

    - `DataSource属性`指定数据绑定控件要绑定到哪个数据控件。 - `DataField属性`定义了控件与数据控件中记录集的哪个字段关联,显示或修改对应字段内容。 - `DataChanged属性`用于检测数据是否被修改。 3. **示例...

    使用数据绑定控件连接数据源.rar

    在.NET框架中,数据绑定控件允许开发者将用户界面(UI)组件与数据源无缝连接,从而实现动态数据显示和用户交互。本教程主要关注如何使用数据绑定控件来连接数据源,以创建更加互动和动态的应用程序。 首先,我们...

    ASP.NET的3个数据绑定控件

    在这个压缩包中,我们重点关注的是三个数据绑定控件:FormView、DetailsView和DataList。这些控件在ASP.NET中用于显示和操作数据库中的数据,具有高度自定义性和灵活性。 1. **FormView**: FormView是ASP.NET中的...

    C#利用数据绑定控件修改数据

    本篇将深入探讨如何利用数据绑定控件来修改数据,这在开发Windows Forms、WPF或ASP.NET应用时尤为重要。 首先,理解数据绑定的基本概念是至关重要的。数据绑定涉及到三个主要组件:数据源、控件和数据绑定表达式。...

    DataSource控件与GridView控件的数据绑定

    本篇文章将深入探讨如何使用DataSource控件从数据库获取数据,并将其绑定到GridView控件上,同时实现数据的更新和删除功能。 首先,DataSource控件是一个抽象层,它允许开发者从多种数据源(如SQL数据库、XML文件、...

    第七章 asp.net数据绑定控件(一)事例

    在ASP.NET中,数据绑定控件是Web开发中不可或缺的一部分,它们使得开发者能够方便地将数据库或其他数据源中的数据展示到网页上。本章节主要探讨的是数据绑定控件的使用,我们将围绕这一主题展开深入讨论。 首先,...

    asp.net之数据绑定控件

    在ASP.NET中,数据绑定控件是用于展示和操作数据的核心元素。这些控件使得开发者能够轻松地将数据库或其他数据源中的数据与用户界面(UI)进行连接,从而实现动态、交互式的网页应用。以下是对标题和描述中提及的...

    MFC下好用的高速绘图控件-(Hight-Speed Charting)

    3. **数据绑定**:将程序中的数据与绘图控件关联起来。这通常通过设置控件的系列(Series)和数据源(DataSource)来实现。对于波形图,数据可能需要按照时间顺序组织,并实时更新。 4. **定制化绘图**:根据需求...

    精彩编程与编程技巧-如何创建数据绑定控件...

    ### 如何创建数据绑定控件:精彩编程与编程技巧 #### 概述 在软件开发过程中,数据绑定是一项重要的技术,它能够使用户界面(UI)元素与后端数据源保持同步更新,从而提高应用程序的交互性和用户体验。本文将详细...

    数据绑定控件介绍一

    ### 数据绑定控件介绍——GridView #### 一、概述 在ASP.NET中,`GridView`是一种功能强大的数据绑定控件,它作为`DataGrid`控件的增强版本出现,并且继承自`BaseDataBoundControl`类。`GridView`提供了丰富的特性...

    C#数据绑定控件中的DataSource属性浅谈

    本文主要探讨了数据绑定控件中的DataSource属性,这是一个关键特性,用于指定填充数据绑定控件如Repeater的数据源。DataSource属性接受任何实现了System.Collections.IEnumerable接口的对象,这包括但不限于System....

    数据源控件和数据源绑定

    它可以连接到各种数据源,并通过设置BindingSource.DataSource属性为数据源(如DataTable或List对象),并将BindingSource.DataMember属性设置为表名或列表字段,就可以将数据绑定到特定的UI控件。 在实际应用中,...

Global site tag (gtag.js) - Google Analytics