處理數(shù)據(jù)行(DataRow)
成都創(chuàng)新互聯(lián)公司是一家專業(yè)從事網(wǎng)站設(shè)計(jì)制作、做網(wǎng)站、網(wǎng)頁設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)公司依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開發(fā)服務(wù)!
Windows窗體中的數(shù)據(jù)綁定列表框和組合框很節(jié)省時(shí)間 典型的代碼如下(假定已經(jīng)建立了SqlDataAdapter或者其它部件獲取數(shù)據(jù))
Dim ds As New DataSet() SqlDataAdapter Fill(ds Customers ) ListBox DataSource = ds Tables( Customers ) ListBox DisplayMember = CompanyName ListBox ValueMember = CustomerID
在這種情況下 代碼使用Northwind數(shù)據(jù)庫的顧客記錄工作 DisplayMember屬性設(shè)置為你希望用戶在列表框中看到的記錄字段 它是customers表的CompanyName 通常ValueMember屬性設(shè)置為數(shù)據(jù)表中的一個(gè)鍵字段 對于customer來說是CustomerID 一旦用戶選擇了列表框中的一行 很容易使用列表框的SelectedValue屬性獲得鍵字段
MsgBox(ListBox SelectedValue)
但是有可能需要一個(gè)與被選擇項(xiàng)相關(guān)的整個(gè)數(shù)據(jù)行對象的引用 例如 如果被選擇的行需要被刪除 就不知道鍵了 你需要一個(gè)數(shù)據(jù)行的引用以使用Delete方法
典型的Visual Basic開發(fā)者通常這樣想 我已經(jīng)得到了該行的鍵了 我將編寫一些邏輯來查找使用該鍵的行 這樣可以實(shí)現(xiàn) 但是有更好的實(shí)現(xiàn)方法 可以使用一行代碼獲取與列表框中選項(xiàng)關(guān)聯(lián)的數(shù)據(jù)行
Dim dr As DataRow = CType(ListBox SelectedItem DataRowView) Row
通常該邏輯不會憑直覺出現(xiàn) 即使對經(jīng)驗(yàn)豐富的開發(fā)者 為了解釋這是怎樣實(shí)現(xiàn)的 我把上面的一行拆成幾行 下面的代碼與上面代碼的功能相同
Dim drv As DataRowView drv = CType(ListBox SelectedItem DataRowView) Dim dr As DataRow dr = drv Row
DataRowView類是數(shù)據(jù)行的包裝 它被多個(gè)Windows窗體控件使用 它使得顯示與控件中的數(shù)據(jù)行相關(guān)的數(shù)據(jù)更加容易 當(dāng)列表框被數(shù)據(jù)綁定到數(shù)據(jù)表時(shí)(假定列表框中的有些行當(dāng)前被選定了) 列表框的SelectedItem屬性保存了一個(gè)DataRowView對象
這意味著我們能把列表框的SelectedItem屬性轉(zhuǎn)換到DataRowView對象 這就是上面代碼中的第二行實(shí)現(xiàn)的 接著DataRowView暴露一個(gè)Row屬性 它指向被包裝的數(shù)據(jù)行 上面的代碼聲明了一個(gè)數(shù)據(jù)行并設(shè)置了Row屬性
轉(zhuǎn)換對象的類型以訪問它的接口的技術(shù)在Visual Basic 中不是經(jīng)常使用 但是在Visual Basic NET中這是經(jīng)常的 有了上面的例子后 大多數(shù)有經(jīng)驗(yàn)的開發(fā)者迅速跟上了這種技術(shù)
數(shù)據(jù)行的引用(dr)可用于用任何方式維護(hù)行 訪問數(shù)據(jù)行中的任何特定字段是可行的 行中的數(shù)據(jù)可以被改變 能使數(shù)據(jù)行的Delete方法把該行標(biāo)識為刪除 或者從數(shù)據(jù)表的行集合中刪除該行 下面的代碼標(biāo)識刪除了一行
dr Delete()
lishixinzhi/Article/program/net/201311/12974
基本思路:
1,設(shè)置繪圖區(qū)域的坐標(biāo)。
2,將每個(gè)站點(diǎn)的坐標(biāo)(x,y)保存到數(shù)組。
3,通過鼠標(biāo)單擊點(diǎn)的坐標(biāo)(x,y)與數(shù)組比較,然后確定顯示相應(yīng)信息。
這里有個(gè)C#的網(wǎng)上OA的代碼,可以參考一下:
第10章(\C10)
示例描述:本章實(shí)現(xiàn)了辦公自動化系統(tǒng),通過該系統(tǒng),公司不同角色的員工可以通過網(wǎng)路完成日常的辦公,包括撰寫報(bào)告、審閱公文等。另外,系統(tǒng)還將實(shí)現(xiàn)一個(gè)系統(tǒng)管理員角色,對整個(gè)系統(tǒng)進(jìn)行動態(tài)的維護(hù)。
\MyOA\Affix 網(wǎng)絡(luò)辦公系統(tǒng)用戶上傳附件目錄
\MyOA\App_Code\BusinessLogicHelper 網(wǎng)絡(luò)辦公系統(tǒng)業(yè)務(wù)邏輯接口層,包括文件:
\FileHelper.cs 公文接口類
\ValidateUtility.cs 數(shù)據(jù)驗(yàn)證功能類
\MyOA\App_Code\BusinessLogicLayer 網(wǎng)絡(luò)辦公系統(tǒng)業(yè)務(wù)邏輯層,包括以下文件:
\Department.cs 部門類
\File.cs 公文類
\FileStatus.cs 公文狀態(tài)類
\Plan.cs 工作計(jì)劃類
\Role.cs 用戶角色權(quán)限類
\User.cs 用戶類
\MyOA\App_Code\CommonComponent 網(wǎng)絡(luò)辦公系統(tǒng)通用組件層,包括文件:
\Encrypt.cs 字符串加密類
\EventsLog.cs 系統(tǒng)日志類
\Tree.cs 權(quán)限樹類
\MyOA\App_Code\DataAccessHelper 網(wǎng)絡(luò)辦公系統(tǒng)數(shù)據(jù)訪問接口層,包括文件:
\SQLString.cs 構(gòu)造SQL語句的通用類
\GetSafeData.cs 安全獲取數(shù)據(jù)類
\MyOA\App_Code\DataAccessLayer 網(wǎng)絡(luò)辦公數(shù)據(jù)訪問層,包括文件:
\Database.cs 數(shù)據(jù)訪問類
\MyOA\App_Code\UserControls 網(wǎng)絡(luò)辦公用戶控件,包括文件:
\LeftTree.ascx 權(quán)限樹菜單控件
\MyOA\DB\MyOA_CreateTable.sql 網(wǎng)絡(luò)辦公數(shù)據(jù)庫創(chuàng)建腳本
\MyOA\DB\MyOA_InitData.sql 網(wǎng)絡(luò)辦公數(shù)據(jù)庫數(shù)據(jù)初始化腳本
\MyOA\Images\ 網(wǎng)絡(luò)辦公系統(tǒng)圖片文件夾
\MyOA\Styles\Styel.css 網(wǎng)絡(luò)辦公系統(tǒng)樣式表文件
\MyOA\Default.aspx 系統(tǒng)首頁
\MyOA\FileAdd.aspx 添加公文頁面
\MyOA\FileDetail.aspx 查看公文詳細(xì)信息頁面
\MyOA\FileList.aspx 瀏覽、查詢公文頁面
\MyOA\Login.aspx 登錄頁面
\MyOA\LogView.aspx 日志管理頁面
\MyOA\PlanList.aspx 工作計(jì)劃管理頁面
\MyOA\RoleManage.aspx 權(quán)限管理頁面
\MyOA\UserAdd.aspx 添加用戶頁面
\MyOA\UserList.aspx 瀏覽、查詢用戶頁面
\MyOA\UserResetPwd.aspx 用戶修改密碼頁面
\MyOA\UserUpdate.aspx 修改用戶信息頁面
雖然不是VB,不過都是點(diǎn)虐 ,應(yīng)該能看懂吧。