VB.NET数据行处理执行方法分析

开发 后端
我们在这篇文章中为大家介绍的是有关VB.NET数据行处理的相关操作技巧,希望初学者可以通过我们介绍的内容初步掌握这一应用技巧。

VB.NET开发语言的出现为我们带来了很多好处。尤其是在代码编写方面为开发人员提供了一个良好的编写方式,提高编程效率。我们今天将要为大家介绍的是VB.NET数据行处理的相关操作技巧,希望对大家有所帮助。

Windows窗体中的数据绑定列表框和组合框很节省时间。典型的VB.NET数据行处理代码如下(假定已经建立了SqlDataAdapter或者其它部件获取数据):

 

  1. Dim ds As New DataSet()  
  2. SqlDataAdapter1.Fill(ds, 
    "Customers")  
  3. ListBox1.DataSource = 
    ds.Tables("Customers")  
  4. ListBox1.DisplayMember =
     
    "CompanyName" 
  5. ListBox1.ValueMember = 
    "CustomerID"  

在这种情况下,VB.NET数据行处理的代码使用Northwind数据库的顾客记录工作。DisplayMember属性设置为你希望用户在列表框中看到的记录字段,它是customers表的CompanyName.通常ValueMember属性设置为数据表中的一个键字段,对于customer来说是CustomerID.一旦用户选择了列表框中的一行,很容易使用列表框的SelectedValue属性获得键字段:

 

  1. MsgBox(ListBox1.
    SelectedValue) 

但是有可能需要一个与被选择项相关的整个数据行对象的引用。例如,如果被选择的行需要被删除,就不知道键了。你需要一个数据行的引用以使用Delete方法。

典型的Visual Basic开发者通常这样想:"我已经得到了该行的键了,我将编写一些逻辑来查找使用该键的行".这样可以实现,但是有更好的实现方法。可以使用一行代码获取与列表框中选项关联的数据行:

 

  1. Dim dr As DataRow = 
    CType(ListBox1.Selected
    Item, DataRowView).Row 

通常该VB.NET数据行处理的逻辑不会凭直觉出现,即使对经验丰富的开发者。为了解释这是怎样实现的,我把上面的一行拆成几行,下面的代码与上面代码的功能相同:

 

  1. Dim drv As DataRowView  
  2. drv = CType(ListBox1
    .SelectedItem,
     DataRowView)  
  3. Dim dr As DataRow  
  4. dr = drv.Row  

DataRowView类是数据行的包装,它被多个Windows窗体控件使用。它使得显示与控件中的数据行相关的数据更加容易。当列表框被数据绑定到数据表时(假定列表框中的有些行当前被选定了),列表框的SelectedItem属性保存了一个DataRowView对象。#t#

这意味着我们能把列表框的SelectedItem属性转换到DataRowView对象,这就是上面代码中的第二行实现的。接着DataRowView暴露一个Row属性,它指向被包装的数据行。上面的代码声明了一个数据行并设置了Row属性。

转换对象的类型以访问它的接口的技术在Visual Basic 6.0中不是经常使用,但是在Visual Basic .NET中这是经常的。有了上面的例子后,大多数有经验的开发者迅速跟上了这种技术。

VB.NET数据行处理的引用(dr)可用于用任何方式维护行。访问数据行中的任何特定字段是可行的。行中的数据可以被改变,能使数据行的Delete方法把该行标识为删除,或者从数据表的行集合中删除该行。下面的代码标识删除了一行:

 

  1. dr.Delete() 

使用主键(由ListBox.SelectedValue返回)查找下层数据行的方法需要很多代码,要花很长时间,执行起来更慢。对于刚开始使用Visual Basic .NET的程序员来说花几个小时编码是很正常的。理解上面的技术节约了很多时间,更简单、容易维护代码。好了,VB.NET数据行处理具体的概念就为大家介绍到这里。

责任编辑:曹凯 来源: 中国IT实验室
相关推荐

2010-01-21 17:58:40

VB.NET List

2010-01-19 18:52:08

VB.NET处理数据行

2009-10-14 16:46:25

VB.NET OnSt

2009-11-02 14:35:52

VB.NET打包

2009-11-02 17:12:01

VB和VB.NET

2009-10-28 10:04:53

VB.NET XmlW

2009-11-03 09:26:13

VB.NET方法

2010-01-18 09:55:30

VB.NET删除空白行

2010-01-13 13:20:08

VB.NET结构化异常

2009-10-13 09:24:57

VB.NET Dock

2009-10-14 15:20:21

VB.NET窗体指针

2009-10-15 10:57:16

VB.NET Text

2009-11-04 10:54:53

VB.NET MOVE

2009-10-27 18:06:41

VB.NET开发控件

2009-10-12 13:11:48

VB.NET使用线程

2009-11-04 09:32:12

VB.NET Auto

2009-10-29 15:16:02

VB.NET文件传送

2009-10-09 17:40:38

VB.Net问题集

2009-11-02 15:57:36

VB.NET WEB

2010-01-15 15:39:14

VB.NET Sub过
点赞
收藏

51CTO技术栈公众号