ListView与.FindControl()方法的简单练习 #2 -- ItemUpdting事件中抓取「修改后」的值

时间:2023-03-09 09:13:30
ListView与.FindControl()方法的简单练习 #2 -- ItemUpdting事件中抓取「修改后」的值

原文出處  http://www.dotblogs.com.tw/mis2000lab/archive/2013/06/24/listview_itemupdating_findcontrol_20130624.aspx

本文跟上一篇文章有关连,请依照顺序来练习:

ListView.FindControl()方法的简单练习#1 -- Page_Load事件中的错误
http://www.dotblogs.com.tw/mis2000lab/archive/2013/06/24/listview_findcontrol_20130624.aspx

书本上集,第十章有几个简单的练习

让读者练习 .FindControl()方法与.Controls各有哪些用途?什么时候用哪一个最简便?

(.NET 4.5起的书籍才有这个范例)

如果您想要用 ListView来练习,写法(跟GridView)很雷同。

流程如下:

1. 进入「编辑」模式以后, User开始修改数据

2. 修改完成后,按下「更新(Update)」按钮才是真正的「抓取 User修改后的值」并回写数据库。

因此.....我要抓取「User修改后的数据」应该把程序写在 ItemUpdating事件

(初学者常犯的错误,他们写在「编辑」的事件中。例如 ...Editing事件....

事实上,按下「编辑」按钮只是画面上的样版作切换,进入「编辑样版」.....

User 还没有动手改资料呢!你如何抓取「人家修改后」的值????

................
流程不对,给你程序代码,你都不知道要放在哪里啊)

这部分的写法,GridView / ListView两者雷同

互相比对一下,很简单

protected void GridView1_RowUpdating(object sender,
GridViewUpdateEventArgs e)

{

//==抓取「编辑」模式里面,使用者修改后的字段值。

TextBox
tb = (TextBox)GridView1.Rows[e.RowIndex].Cells[2].FindControl("TextBox1");

// TextBox tb = (TextBox)GridView1.Rows[e.RowIndex].FindControl("TextBox1");

//或是写成 TextBox tb
= GridView1.Rows[e.RowIndex].FindControl("TextBox1") as TextBox;

Response.Write("<br
/> title -- " + tb.Text);

//......
省 略 ......................................................................................................

}

protected void ListView1_ItemUpdating(object sender,
ListViewUpdateEventArgs e)

{

TextBox
tb = (TextBox)ListView1.Items[e.ItemIndex].FindControl("titleTextBox");

//或是写成TextBox tb
= ListView1.Items[e.ItemIndex].FindControl("titleTextBox") as TextBox;

Response.Write("<br
/> title -- " + tb.Text);

//......
省 略 ......................................................................................................

}

来上课吧!http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.aspx

现场表演,十~二十分钟能做到的事情

自己看书要看好久,很且看完以后还是迷糊的

文字上的说明,真的比不上「现场表演」的生动啊!

我花两年三个月学习的经验

你要花 三个月、在家自修 学完?可能吗?.....太累了吧?

我亲自上课、重点挑出来,

亲自演练给你看

    五次上课,让你抓到一千多页的书本重点!(还有书本没讲的,现场上课才有喔~)

    轻松入门、一次掌握正确观念

..........................................太划算了!

微软MVP + ASP.NET畅销书作者,亲自授课 -- http://www.dotblogs.com.tw/mis2000lab/archive/2011/06/24/29807.aspx