我有一個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. 觸發事件處理程序關閉SharePoint列表列更改
- 2. 事件處理程序觸發System.StackOverflowException
- 3. Sharepoint事件處理程序未觸發
- 4. Javascript事件處理程序未觸發
- 5. ASP.NET控件事件處理程序在回發時未觸發?
- 6. 在一段時間後觸發事件處理程序
- 7. 在更改後未觸發SelectedIndexChanged事件
- 8. 觸發事件處理程序,當任何文本框的文本已更改
- 9. Angular如何在模型值更改後觸發複選框的更改事件?
- 10. 如何更改ValueChanged事件處理程序中的DateTimePicker的值
- 11. 刪除按鈕後事件處理程序不會觸發C#
- 12. 如何觸發另一個事件中的事件處理程序,C#
- 13. 如何在AJAX內容加載到JQuery後觸發事件處理程序
- 14. 如何僅當事件按特定順序發生時觸發jquery事件處理程序?
- 15. 更新按鈕觸發編輯事件處理程序
- 16. 如何確定在JavaScript或jQuery中觸發事件處理程序的順序?
- 17. 更改處理程序不會在Flex中首次觸發
- 18. jQuery:如何停止從blur()處理程序觸發change()事件?
- 19. selectedIndex更改後觸發onChange事件?
- 20. jQuery事件處理程序有時在IE中沒有觸發
- 21. 事件處理程序沒有在WebForms中觸發
- 22. 使用VBA在IE中觸發事件處理程序
- 23. 在事件處理程序中觸發javascript默認動作
- 24. 角事件處理程序的屬性更改不觸發聽衆
- 25. 如果在事件處理程序中調用wx.PostEvent不會觸發事件?
- 26. 查找如何觸發更改事件
- 27. 觸發事件處理器回發c#
- 28. 如何在發生特定操作後添加onclick事件處理程序?
- 29. 更改事件未觸發
- 30. 觸發更改事件
這是唯一的想法,工作。 – 2009-06-03 16:49:41