Binding a DataGrid to an ADO Recordset

原创 2003年04月10日 09:39:00

对于大部分原来编写ASP程序的程序员来说,他们对ADO Recordset还是很有感情的。虽然在.NET里已经用DATSET代替了ADO Recordset,但是ADO Recordset在处理一些接口程序的时候还是很有用处的,尤其是当我们在.NET里调用返回ADO Recordset类型的COM时。当你看完下面的说明以后,你会发现它是如此EASY。效果如下图所示:

这里我们用到了a DataGrid and a DropDownList,他们帮定到相同的数据源。数据源是基于Northwind 数据库的。事实上,我们并不能直接绑定ASP.NET控件到ADO Recordset,我们需要添加一个  引用:ADODB library 。在我们的工程References 文件夹点击右键,选择添加引用,选择COM 页,加入Microsoft ActiveX Data Objects 2.7 Library。具体的代码如下:

private void Bind()
{
   OleDbDataAdapter custDA = new OleDbDataAdapter();
   DataTable dtTerritories = new DataTable("Territories");
   
   ADODB.Connection adoConn = new ADODB.Connection();
   ADODB.Recordset adoRS = new ADODB.Recordset();
   
   adoConn.Open("Provider=SQLOLEDB;Data Source=localhost;Initial Catalog=Northwind;User Id=;Password=;", "", "", -1);
   adoRS.Open("SELECT TerritoryID, TerritoryDescription FROM Territories Order By TerritoryDescription", adoConn, ADODB.CursorTypeEnum.adOpenForwardOnly, ADODB.LockTypeEnum.adLockReadOnly, 1);
   
   custDA.Fill(dtTerritories, adoRS);
   
   adoRS.Close();
   adoConn.Close();
   
   adoRS = null;
   adoConn = null;
   
   DataGrid1.DataSource = dtTerritories;
   DataGrid1.DataBind();
   
   DropDownList1.DataSource = dtTerritories;
   DropDownList1.DataValueField = "TerritoryID";
   DropDownList1.DataTextField = "TerritoryDescription";
   DropDownList1.DataBind();
}

【VBA研究】使用ADO组件的两种方式----引用法和创建法

作者:iamlaosong 1、引用法      引用ADO相关组件:打开VBA编辑器,在菜单中点选“工具”--》“引用”。确保“Microsoft ActiviteX Data Objects 2....
  • iamlaosong
  • iamlaosong
  • 2015年04月17日 14:27
  • 2919

VC+ADO recordset(属性含义)

第一部分:记录集 记录集是从数据库中按一定查询条件读入到内存中的一批记录,以供快速的操作。 记录集recordset对象的属性,方法: BOF:当记录集记录指针指到起始记录(第1条记...
  • CAICHAO1234
  • CAICHAO1234
  • 2013年04月07日 08:52
  • 3360

Delphi下的原生ADO使用方法

本文向您揭示在Delphi中使用ADO是如何轻而易举,结合了ADO的Delphi应用程序,将不再依赖于BDE。 ADO的精髓在于利用简单的COM指令来快速方便的访问ODBC数据源,微软的表格、...
  • Hmillet
  • Hmillet
  • 2016年03月30日 09:55
  • 2438

使用ADO读取数据库中的二进制文件

1.       //JPG图片保存到数据库    2.           try    3.           {    4.               _Recordset...
  • alphaxz1
  • alphaxz1
  • 2015年10月22日 11:13
  • 287

WPF中的binding(五)- 使用DataTable作为Binding的源

一、DataTable的DefaultView属性赋值给ListBox等派生自ItemsControl类的对象。 XAML文件如下,我们设置ListBox的DisplayMemberPath为Name...
  • lzhui1987
  • lzhui1987
  • 2016年06月13日 08:10
  • 2595

ADO中记录集recordSet的使用

_variant_t vUsername,vID,vname; //变量声明 _RecordsetPtr m_pRecordset;     //记录集 CString strid; _Conn...
  • u013513883
  • u013513883
  • 2014年08月20日 23:21
  • 1103

ADO如何锁定RecordSet的记录

前面介绍使用Recordset(记录集合)对象的方法如下:  Set rs = Server.CreateObject("ADODB.Recordset")  rs.Open SQL指令,...
  • lixu0828
  • lixu0828
  • 2014年10月08日 22:42
  • 243

WPF - 使用XML作为datagrid数据源进行binding

WPF - 使用XML作为datagrid数据源进行binding
  • Danny_Yao
  • Danny_Yao
  • 2014年11月01日 00:23
  • 1330

C# WPF中DataGrid的数据绑定(Binding)

转载地址:http://www.zhixing123.cn/net/csharp-wpf-datagrid-binding.html 最近使用C#+WPF开发一个小测试工具,其中用到了DataGri...
  • mao_mao37
  • mao_mao37
  • 2016年04月25日 14:50
  • 5096

Python学习笔记——ADO访问数据库

因为工作中用到ADO访问数据库,在这做一个记录,文中实例是Python通过ADO访问SQL Server 2005数据库。 ADO (ActiveX Data Objects,ActiveX数据对象)...
  • xxyy142857
  • xxyy142857
  • 2015年07月15日 14:09
  • 1219
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Binding a DataGrid to an ADO Recordset
举报原因:
原因补充:

(最多只允许输入30个字)