2012-03-16 63 views
0

我有以下情況: 我編寫了一個aspx app c#,用戶在頁面中有4個下拉列表,一個文本框和兩個按鈕(取消,保存)。我需要記住用戶在允許他更改任何下拉列表的索引之前保存文本框的任何更改。因此,如果用戶更改了文本框的值,他只能選擇取消或保存這些更改。如果他試圖做其他事情,比如更改下拉列表的索引,我需要取消該事件,並在此之前給他一條消息以保存或取消。如何強制用戶保存?

我已經嘗試了很多方法,但他們都似乎對我來說是amatours,並給予很多的輔助效果。有沒有什麼體面的/優雅的方式來做到這一點?

+0

我在下面給出了一個答案,但我真的好奇你想要達到什麼目的,因爲這有一個難聞的氣味;不管業務邏輯是什麼,我敢打賭有一個更簡單的方法...... – IrishChieftain 2012-03-16 04:00:12

回答

0

爲TextBox創建自定義驗證器。在DropDownList的SelectedIndexChanged事件處理程序中,檢查TextBox的狀態並適當地設置驗證器的args.IsValid屬性 - 如果TextBox的值已更改,您可以通過TextBox的CustomValidator ErrorMessage屬性通知用戶單擊Save。