成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

淺談VB.NET DataRowView

開發 后端
這里介紹VB.NET DataRowView類是數據行的包裝,它被多個Windows窗體控件使用。它使得顯示與控件中的數據行相關的數據更加容易。

本文向大家介紹VB.NET DataRowView,可能好多人還不了解VB.NET DataRowView,沒有關系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

Windows窗體中的數據綁定列表框和組合框很節省時間。典型的代碼如下(假定已經建立了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" 

在這種情況下,代碼使用Northwind數據庫的顧客記錄工作。DisplayMember屬性設置為你希望用戶在列表框中看到的記錄字段,它是 customers表的CompanyName.通常ValueMember屬性設置為數據表中的一個鍵字段,對于customer來說是 CustomerID.一旦用戶選擇了列表框中的一行,很容易使用列表框的SelectedValue屬性獲得鍵字段:

MsgBox(ListBox1.SelectedValue)

但是有可能需要一個與被選擇項相關的整個數據行對象的引用。例如,如果被選擇的行需要被刪除,就不知道鍵了。你需要一個數據行的引用以使用Delete方法。

典型的VB開發者通常這樣想:"我已經得到了該行的鍵了,我將編寫一些邏輯來查找使用該鍵的行".這樣可以實現,但是有更好的實現方法。可以使用一行代碼獲取與列表框中選項關聯的數據行:

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

通常該邏輯不會憑直覺出現,即使對經驗豐富的開發者。為了解釋這是怎樣實現的,我把上面的一行拆成幾行,下面的代碼與上面代碼的功能相同:

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

VB.NET DataRowView類是數據行的包裝,它被多個Windows窗體控件使用。它使得顯示與控件中的數據行相關的數據更加容易。當列表框被數據綁定到數據表時(假定列表框中的有些行當前被選定了),列表框的SelectedItem屬性保存了一個VB.NET DataRowView對象。

這意味著我們能把列表框的SelectedItem屬性轉換到VB.NET DataRowView對象,這就是上面代碼中的第二行實現的。接著VB.NET DataRowView暴露一個Row屬性,它指向被包裝的數據行。上面的代碼聲明了一個數據行并設置了Row屬性。

轉換對象的類型以訪問它的接口的技術在VB 6.0中不是經常使用,但是在VB .NET中這是經常的。有了上面的例子后,大多數有經驗的開發者迅速跟上了這種技術。

數據行的引用(dr)可用于用任何方式維護行。訪問數據行中的任何特定字段是可行的。行中的數據可以被改變,能使數據行的Delete方法把該行標識為刪除,或者從數據表的行集合中刪除該行。下面的代碼標識刪除了一行:

dr.Delete()

使用主鍵(由ListBox.SelectedValue返回)查找下層數據行的方法需要很多代碼,要花很長時間,執行起來更慢。對于剛開始使用VB .NET的程序員來說花幾個小時編碼是很正常的。理解上面的技術節約了很多時間,更簡單、容易維護代碼。

【編輯推薦】

  1. 簡單描述VB.NET散列函數
  2. 詳細分析VB.NET讀寫文本文件
  3. VB.NET GroupBox控件學習經驗
  4. 概括VB.NET DomainUpDown控件
  5. VB.NET編碼算法學習筆記
責任編輯:佚名 來源: IT168
相關推薦

2009-10-20 09:39:04

VB.NET Butt

2009-10-28 10:31:23

VB.NET Impl

2009-10-13 11:22:46

VB.NET調用Web

2009-10-12 13:32:58

VB.NET線程構造器

2009-10-16 10:14:26

VB.NET使用Fil

2010-01-22 15:56:03

VB.NET獲取當前U

2009-10-19 11:28:42

VB.NET語言.NET開發語言

2010-01-21 17:23:05

VB.NET Radi

2010-01-21 15:10:37

VB.NET靜態托盤程

2009-06-29 10:50:18

VB.NET面向對象能力

2010-01-22 13:08:50

VB.NET創建數組

2009-06-23 11:49:22

跨進程消息鉤子VB.NET

2009-10-20 14:03:48

VB.NET數組聲明VB.NET數組初始化

2009-10-29 14:02:24

VB和VB.NET比較

2011-06-17 11:05:22

VB.NET

2009-06-24 15:45:32

VB.NET

2009-10-20 14:21:55

VB.NET fnSi

2010-01-22 11:15:50

VB.NET固定值變量

2009-10-26 17:07:17

VB.NET UNDO

2009-11-02 17:12:01

VB和VB.NET
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 天天射网站 | 一级在线毛片 | 午夜视频一区 | 欧美久久久久 | 成人av在线播放 | 精品伊人 | 国产激情91久久精品导航 | 国产精品久久久乱弄 | 99爱视频 | 日本超碰 | 国产成人小视频 | 日韩在线免费播放 | 麻豆久久久久久 | 欧美男人天堂 | 日韩精品在线播放 | 欧美日韩电影一区 | 国产视频第一页 | 99久久精品免费 | 盗摄精品av一区二区三区 | 欧美在线视频一区二区 | 国内精品久久久久久久 | 亚洲第一网站 | 日韩欧美国产一区二区三区 | 国产精品永久久久久久久www | 久久综合九九 | 蜜臀网站 | 麻豆一区二区三区 | 99精品一级欧美片免费播放 | 久久久久成人精品免费播放动漫 | 免费三级av | 美女毛片免费看 | 日韩在线三级 | 国产精品综合一区二区 | www.天天干.com | 国产精品 欧美精品 | 日本久久网 | 欧美日韩高清一区二区三区 | 欧美视频免费 | 亚洲欧美日韩精品久久亚洲区 | 81精品国产乱码久久久久久 | 特级做a爰片毛片免费看108 |