台灣最大程式設計社群網站
線上人數
1353
 
會員總數:241337
討論主題:186908
歡迎您免費加入會員
討論區列表 >> ASP.NET >> DetailsView的Edit模式下資料輸錯時停在Edit模式
[ 變換順序 ]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
DetailsView的Edit模式下資料輸錯時停在Edit模式
價值 : 30 QP  點閱數:181 回應數:3

樓主

小豪
門外漢
0 14
408 9
發送站內信

自行設計按鈕操控DetailsView時,
按「編輯」按鈕使DetailsView進Edit模式以編輯資料,
編輯後按「確定」按鈕時,
假如資料輸對則資料寫入資料庫並使DetailsView進ReadOnly模式,
假如資料輸錯現出現「須輸入資料」訊息後DetailsView進ReadOnly模式。

希望假如資料輸錯,則出現「須輸入資料」訊息後DetailsView停在Edit模式,
但發現不論資料是否輸對,DetailsView1_ModeChanging皆不被觸發。
請問解法?
因自行設計按鈕操控DetailsView則ModeChanging及ModeChanged事件皆不被觸發?
謝謝。

aspx檔:


aspx.cs檔:

搜尋相關Tags的文章: [ DetailsView ] , [ DetailsViewMode ] , [ ModeChanging ] ,
本篇文章發表於2017-08-06 17:48
別忘捐VP感謝幫助你的人 新手會員瞧一瞧
1樓
回應

MIS2000 Lab
檢舉此回應
Q: 假如資料輸對則資料寫入資料庫並使DetailsView進ReadOnly模式,
假如資料輸錯現出現「須輸入資料」訊息後DetailsView進ReadOnly模式。


A : 您要不要在 DetailsView1_ItemUpdating事件裡面

直接寫 DetailsView1.EditIndex = -1; 就好了?
記得重新 DataBinding

試試看
本篇文章回覆於2017-08-08 08:29
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

小豪
檢舉此回應
謝謝回覆。

抱歉,我的問題如下:
希望當資料輸錯出現「須輸入資料」訊息後,
DetailsView停在Edit模式而不回ReadOnly模式,
因現在DetailsView會自動回ReadOnly模式。

P.S.GridView有EditIndex,DetailsView沒有。
本篇文章回覆於2017-08-08 17:53
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

MIS2000 Lab
檢舉此回應
您可以試試看
在 DetailsView1_ItemUpdating事件裡面

DetailsView1.ChangeMode(DetailsViewMode.Edit); //這段程式碼可以控制DetailsView的操作模式
//DetailsView1.DefaultMode = DetailsViewMode.Edit; //我試過這種寫法,好像沒效

資料來源:
這本書的第20章有四大控制項,完全手動寫程式碼來操控(不靠SqlDataSource精靈)
這個技巧是源自這裡,您參考看看
http://www.books.com.tw/products/0010705908
本篇文章回覆於2017-08-09 08:47
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
[ 變換順序 ]   
1

回覆
如要回應,請先登入.