我有一個DevExpress的TcxGrid,與連接到它的GridView的OnEditValueChanged事件的事件處理程序,是應該在一列總結了一些數據。問題是,在更新後的值寫入底層數據集之前,此事件在驗證期間被觸發。我對TcxGrid不太熟悉。有誰知道,如果有一種方法來觸發一個事件處理程序後的數據集已更新?如何在TcxGrid中的值發生更改後觸發事件處理程序?
回答
有關使用DataSource.OnDataChange事件是什麼?
你使用cxTableView或cxDBTableView在cxGrid
如果使用cxDBTableView那麼你在cxDBTableView的財產鏈接數據源的datasource.onchange設置你的事件。 (cxDBTableView .datacontroller.datasource)
我會與skamradt一起去看看:更仔細地尋找符合您期望的事件。
否則,您可以確保您的數據初始化後插上的事件:
procedure TMyGrid.MyProc_OnDataLoaded(Sender : TObject); //I made up this event, I'm not sure it exists
begin
Self.OnEditValueChanged := MyProc_OnEditValueChanged;
end;
我會強烈建議你不要用這個作爲一個普通的深化發展習慣中(使通過代碼設置另一個回調的事件一個肯定的方式來調試地獄),但如果你真的沒有找到任何其他方式來做到這一點...
我不知道這是否正是你所需要的,但我已經找到ImmediatePost選項該網格對於需要更新摘要的情況非常有用 - 它被隱藏在cxView的Data Controller屬性下。這使得網格就像電子表格一樣 - 只要用戶按下單元格中的輸入或選項卡,記錄就會發布。那麼我可能會從數據集的AfterPost事件中收集我的總結事件,或許? (你可能已經知道這一點,但GridView本身有很多非常有用的彙總選項 - 查看列的摘要屬性,並確保在ViewOptions中將ShowFooter設置爲true - 所以如果你的總結是一個相對簡單的總體或平均或相似,讓網格做到這一切,並節省自己的一些工作。)
簡單的摘要將不起作用。不過,我喜歡ImmediatePost的想法。我今天早上上班時會看看它是否符合我的需求。 – 2009-06-03 12:42:12
- 1. 如何在更改字段時觸發事件處理程序?
- 2. 復位框事件在值發生更改後觸發
- 3. 如何在事件處理程序被觸發後刪除它?
- 4. 事件處理程序在jquery中發生事件之前觸發
- 5. 觸發事件處理程序關閉SharePoint列表列更改
- 6. 事件處理程序觸發System.StackOverflowException
- 7. Javascript事件處理程序未觸發
- 8. Sharepoint事件處理程序未觸發
- 9. 如何在Silverlight中觸發PropertyChanged事件處理程序一次?
- 10. ASP.NET控件事件處理程序在回發時未觸發?
- 11. 在一段時間後觸發事件處理程序
- 12. 如何在事件處理程序中觸發元素的默認事件?
- 13. 在更改後未觸發SelectedIndexChanged事件
- 14. 觸發事件處理程序,當任何文本框的文本已更改
- 15. 如何更改ValueChanged事件處理程序中的DateTimePicker的值
- 16. ResultSetManager在postLoad事件處理程序後發生了破壞
- 17. 觸發器然後處理JavaScript事件?
- 18. Angular如何在模型值更改後觸發複選框的更改事件?
- 19. 刪除按鈕後事件處理程序不會觸發C#
- 20. 如何觸發另一個事件中的事件處理程序,C#
- 21. 事件處理程序自動點擊事件觸發 - jQuery的
- 22. 在JavaScript中,如何在變量值更改時觸發事件?
- 23. 如何僅當事件按特定順序發生時觸發jquery事件處理程序?
- 24. 如何確定在JavaScript或jQuery中觸發事件處理程序的順序?
- 25. 如何在AJAX內容加載到JQuery後觸發事件處理程序
- 26. 更新按鈕觸發編輯事件處理程序
- 27. 如何使用事件處理程序控制在ssis中發生同樣錯誤的電子郵件觸發?
- 28. 更改處理程序不會在Flex中首次觸發
- 29. jQuery:如何停止從blur()處理程序觸發change()事件?
- 30. 如何在切換觸發器更改時觸發事件?
這是唯一的想法,工作。 – 2009-06-03 16:49:41