首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET 2.0 數據教程(十九):編輯與新增介面整合驗證控制項完整實作

     編輯:關於ASP.NET

返回 ASP.NET 2.0 數據教程目錄

譯注: Scott Mitchell 46 篇 ASP.NET 2.0 教程系列第 19 篇譯文,原文尚未發布。Word 文件可在這裡下載中英混排版本,這裡下載中文版本。

目錄

  1. 簡介
  2. 從《Examining the Events Associated with Inserting, Updating, and Deleting》複製程式碼
  3. 將繫結欄轉換為模板欄
  4. 為 GridView 項目編輯模板(EditItemTemplate)增加驗證控制項
  5. 概述頁面資料錄入問題
  6. 為 DetailsView InsertItemTemplate 模板增加驗證控制項
  7. 對驗證控制項進行分組
  8. 小結

簡介

前三節範例(譯注:本文完稿時前三節 16-18 仍在緊張翻譯中,且目前教程系列 46 篇僅 15 篇發布,其他原文未發布無法從網路獲取)中,GridView 與 DetailsView 使用繫結欄與 CheckBoxField(繫結時透過智慧標籤讓 VS 依資料庫自動增加對應類型)。編輯 GridView 或 DetailsView 列時,非唯讀屬性繫結欄自動轉為 textbox 供用戶修改。同理 DetailsView 新增記錄時,InsertVisible 為 true(預設)的繫結欄呈現空 textbox 接受輸入。CheckBoxField 同理,通常唯讀核取方塊顯示,新增/編輯時可選擇。

雖 BoundField 與 CheckBoxField 提供編輯新增介面實用,但缺乏驗證功能。用戶產生錄入錯誤(如遺漏 ProductName 或 UnitsInStock 輸入 -50)應用程式將從底層拋出例外。雖可如上節教程 previous tutorial 討論處理例外,但完美「新增/編輯」介面應含驗證控制項,第一時間阻擋無效輸入。

提供自訂新增/編輯介面需將 BoundField、CheckBoxField 換成模板欄(ITemplateField)。關於模板欄已在 Using TemplateFields in the GridView Control 與 Using TemplateFields in the DetailsView Control 討論,由處理不同列狀態模板組成。模板欄項目模板(ItemTemplate)呈現 DetailsView 或 GridView 唯讀欄位或列,EditItemTemplate 與 InsertItemTemplate 分別為編輯與新增模式介面模板。

本節教程將發現為模板欄 EditItemTemplate 與 InsertItemTemplate 提供驗證控制項以提供更健全介面是多麼簡單。明確說,本教程採用 Examining the Events Associated with Inserting, Updating, and Deleting 建立的範例程式碼,增加新增/編輯時相關驗證。

一、複製《Examining the Events Associated with Inserting, Updating, and Deleting》範例程式碼

在該教程中建立頁面,可編輯 GridView 列表顯示產品名稱與價格。頁面含 DetailsView,DefaultMode 設為 Insert 永呈新增模式。透過 DetailsView 用戶錄入名稱價格新增產品,點擊 Insert 後新產品加入系統(見圖 1)。

圖 1:先前程式碼允許用戶新增產品或修改現有產品

圖 1:以前的程式碼允許用戶增加新的產品或修改已有的產品

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved