DataGrid控件的使用

—佐岸

—佐岸

2016-02-19 13:34

在这个颜值当道,屌丝闪边的时代,拼不过颜值拼内涵,只有知识丰富才能提升一个人的内在气质和修养,所谓人丑就要多学习,今天图老师给大家分享DataGrid控件的使用,希望可以对大家能有小小的帮助。

使用DataGrid控件
  
  DataGrid控件是一种类似于电子数据表的绑定控件,可以显示一系列行和列来表示Recordset对象的记录和字段。可以使用DataGrid来创建一个允许最终用户阅读和写入到绝大多数数据库的应用程序。DataGrid控件可以在设计时快速进行配置,只需少量代码或无需代码。当在设计时设置了DataGrid控件的DataSource属性后,就会用数据源的记录集来自动填充该控件,以及自动设置该控件的列标头。然后您就可以编辑该网格的列;删除、重新安排、添加列标头、或者调整任意一列的宽度。
  在运行时,可以在程序中切换DataSource来察看不同的表,或者可以修改当前数据库的查询,以返回一个不同的记录集合。
  注意DataGrid控件与VisualBasic5.0中的DBGrid是代码兼容的,除了一个例外:DataGrid控件不支持DBGrid的“解除绑定模式”概念。DBGrid控件包括在VisualBasic的Tools目录中。
  
  可能的用法
  查看和编辑在远程或本地数据库中的数据。
  与另一个数据绑定的控件(诸如DataList控件)联合使用,使用DataGrid控件来显示一个表的记录,这个表通过一个公共字段链接到由第二个数据绑定控件所显示的表。
  
  使用DataGrid控件的设计时特性
  可以不编写任何代码,只通过使用DataGrid控件的设计时特性来创建一个数据库应用程序。下面的说明概要地说明了在实现DataGrid控件的典型应用时的一般步骤。完整的循序渐进的指示,请参阅主题“DataGrid方案1:使用DataGrid控件创建一个简单数据库应用程序”。
  要在设计时实现一个DataGrid控件
  1.为要访问的数据库创建一个Microsoft数据链接(.MDL)文件。请参阅“创建NorthwindOLEDB数据链接”主题,以获得一个示例。
  2.在窗体上放置一个ADOData控件,并将其ConnectionString属性设置为在第1步中所创建的OLEDB数据源。
  3.在这个AdoData控件的RecordSource属性中输入一条将返回一个记
  录集的SQL语句。例如,Select*FromMyTableNameWhereCustID=12
  4.在窗体上放置一个DataGrid控件,并将其DataSource属性设置为这个ADOData控件。
  5.右键单击该DataGrid控件,然后单击“检索字段”。
  6.右键单击该DataGrid控件,然后单击“编辑”。
  7.重新设置该网格的大小、删除或添加网格的列。
  8.右键单击该DataGrid控件,然后单击“属性”。
  9.使用“属性页”对话框来设置该控件的适当的属性,将该网格配置为所需的外观和行为。
  
  在运行时更改显示的数据
  在创建了一个使用设计时特性的网格后,也可以在运行时动态地更改该网格的数据源。下面介绍实现这一功能的通常方法。
  
  更改DataSource的RecordSource
  更改所显示的数据的最通常方法是改变该DataSource的查询。例如,如果DataGrid控件使用一个ADOData控件作为其DataSource,则重写RecordSource和刷新该ADOData控件都将改变所显示的数据。
  'ADOData控件连接的是Northwind数据库的'Products表。新查询查找所有
  'SupplierID=12的记录。
  DimstrQueryAsString
  strQuery="SELECT*FROMSuppliersWHERESupplierID=12"
  Adodc1.RecordSource=strQuery
  Adodc1.Refresh
  
  更改DataSource
  在运行时,可以将DataSource属性重新设置为一个不同的数据源。例如,您可能具有若干个ADOData控件,每个控件连接不同的数据库,或设置为不同的RecordSource属性。可以简单地将DataSource从一个ADOData控件重新设置为另一个ADOData控件:
  '将DataSource重新设置为一个连接到Pubs数据库的、
  '使用Authors表的ADOData控件。
  SetDataGrid1.DataSource=adoPubsAuthors
  
  重新绑定DataSource
  当将DataGrid控件用于一个远程数据库,诸如SQLServer时,可以改变表的结构。例如,可以给这个表添加一个字段。在这种情形下,可以调用Rebind方法根据新的结构来重新创建该网格。注意,如果已经在设计时改变了这个列的布局,DataGrid控件将会试图重新创建当前的布局,包括任何空的列。不过,通过首先调用ClearFields方法,可以强制该网格重新设置所有的列。
  
  从DataGrid返回值
  在DataGrid被连接到一个数据库后,可能想要监视用户单击了哪一个单元。可以使用RowColChange事件——而不是Click事件。如下所示:
  PrivateSubDataGrid1_RowColChange(LastRowAsVariant,ByValLastColAsInteger)
     '显示用户所单击的单元的文字、行和列的信息。
     Debug.PrintDataGrid1.Text;DataGrid1.Row;DataGrid1.Col
  EndSub
  
  使用CellText和CellValue方法
  当一个列使用NumberFormat属性设置格式后,CellText和CellValue属性是很有用的。NumberFormat属性不必更改实际的数据格式就可以更改任何包含数字的列的格式。例如,给定一个网格,其中包含一个名为ProductID的、包含整数的列。下面的代码将使DataGrid以"P-0000"的格式来显示数据。换句话说,尽管在ProductID字段中所包含的实际数值为"3",但该网格所显示的值将是"P-0003"。
    PrivateSubForm_Load()
    DataGrid1.Columns("ProductID").NumberFormat="P-0000"
    EndSub
  要返回数据库中所包含的实际值,应使用CellValue方法,如下所示:
    PrivateSubDataGrid1_RowColChange(LastRowAsVariant,ByValLastColAsInteger)
    Debug.Print_
    DataGrid1.Columns("ProductID").CellValue(DataGrid1.Bookmark)
    EndSub
  注意上面所用的CellValue和下面所用的CellText值,都需要将Bookmark属性作为一个参数,功能才正确。
  相反地,如果要返回该字段的格式化的值,应使用CellText方法:
    PrivateSubDataGrid1_RowColChange(LastRowAsVariant,ByValLastColAsInteger)
    Debug.Print_
    DataGrid1.Columns("ProductID").CellText(DataGrid1.Bookmark)
    EndSub
  注意上面的CellText方法等价于使用DataGrid控件的Text属性。
  
  下一步
  要阅读关于使用该控件创建简单的应用程序的一个循序渐进的过程,请参阅“使用DataGrid控件创建简单的数据库应用程序”,或“创建一个连接DataList控件的DataGrid”。
  要了解关于Split对象以及如何对其编程的详细信息,请参阅“操作DataGrid视图”。
  

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)->

展开更多 50%)
分享

猜你喜欢

DataGrid控件的使用

编程语言 网络编程
DataGrid控件的使用

DataGrid 控件的使用

编程语言 网络编程
DataGrid 控件的使用

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

DataGrid控件的使用二

编程语言 网络编程
DataGrid控件的使用二

DataGrid控件的使用四

编程语言 网络编程
DataGrid控件的使用四

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

DataGrid控件的使用五

编程语言 网络编程
DataGrid控件的使用五

DataGrid控件的使用三

编程语言 网络编程
DataGrid控件的使用三

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

1.2 Are you ready?

1.2 Are you ready?

VisualBasic集成开发环境的元素

VisualBasic集成开发环境的元素
下拉加载更多内容 ↓