这是我文章的备份,原文请看:
http://www.dotblogs.com.tw/mis2000lab/archive/2011/08/24/detailsview_formview_databound_event_dataitem_property.aspx
[习题]DetailsView/FormView的 DataBound事件 搭配 DataItem、DataItemIndex与DataItemCount属性
我在書本「上集」(ASP.NET 專題實務)的第六章 DetailsView
就下了猛藥!
除了最基础的 DetailsView + SqlDataSource这种不用写程序的「精灵」之外。
我直接附上 100%手写程序,控制 DetailsView与 ADO.NET存取数据库。
- ADO.NET #10 DetailsView 变更模式(完全手写、后置程序代码!)
http://www.dotblogs.com.tw/mis2000lab/archive/2009/12/01/detailsview_manual_dataset_changemode.aspx
- [习题][主细表] GridView + DetailsView两者的资料与"页数"连动
==========================================================================
有心要学,你可以学到更多。
浅尝即止,您也可以 "只" 学到精灵的设定步骤。
买了一本书,不怕内容太多(多到学不完!!)
一时看不完,大不了留着以后慢慢看~
最怕你要用的时候,书到用时方恨少,
书上除了精灵,什么都没教你!....这才是悲哀!
我正在搜集各大控件的常用属性、常用事件作一个整理
以下是我在 MSDN发现的范例,非常清楚简洁,
给自己留一个记录,也分享给大家。
MSDN网站上面,都有完整的 VB、 C#范例与程序代码
资料来源:
http://msdn.microsoft.com/zh-tw/library/system.web.ui.webcontrols.detailsview.dataitem.aspx
DataItem属性只有在发生数据系结之后才能使用。所以我们会把程序写在 DataBound事件里
发生数据系结之前,这个属性都会传回 Nothing(C#为 null)。当 DetailsView 控件处于插入模式时,这个属性也不适用,而且会传回 Nothing。
另外要注意这句话:
请使用 DataItem 属性,存取系结至 DetailsView 控件的数据项。这个数据项通常用于直接存取目前数据录的字段值。这个属性传回的 Object 型别,会根据资料来源而有所不同。例如,当 SqlDataSource 控件系结至 DetailsView 控件时,便会传回 DataRowView 物件。
因此,底下的第一个范例,我们可以透过这个程序代码,取得某一笔记录的「第一个字段」
因为 DetailsView与 FormView都是 一页呈现一笔记录的!
VB ----
Dim rowView
As DataRowView = CType(DetailsView1.DataItem, DataRowView)
'== 列出第一个字段的值。
Response.Write("<br />列出第一个字段的值。rowView.Row(0).ToString()
---- " & rowView.Row(0).ToString())
C# ----
DataRowView
rowView = (DataRowView)DetailsView1.DataItem;
//== 列出第一个字段的值。
Response.Write("<br />列出第一个字段的值。rowView.Row[0].ToString()
---- " + rowView.Row[0].ToString());
資料來源:
http://msdn.microsoft.com/zh-tw/library/system.web.ui.webcontrols.detailsview.dataitemcount.aspx
資料來源:
http://msdn.microsoft.com/zh-tw/library/system.web.ui.webcontrols.detailsview.dataitemindex.aspx
範例下載(VB與C#語法)---- DetailsView.rar
我簡化過,而且搭配了書本裡面的範例 + DB,讓讀者下載後,易於學習
2011/8/30 補充: FormView動態加入 ItemTemplate #1 -- PlaceHolder,動態加入 Web控制項
....................................................................................................寄信给我 mis2000lab (at)雅虎.com.台湾 ........
ASP.NET案例精编(清华大学出版社 / 作者MIS2000Lab)
http://www.china-pub.com/46063
2009/5/15上市
市场价 :¥59.80 RMB(人民幣)

【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步