DBGridEh
算是Delphi
中比較好用的第三方數據感知組件了,但其中有些小坑是真的有點小無語的。
場景
客戶需要的有這樣一組數據,大部分列是要求和的,用DBGridEh
的Footer
是輕鬆加愉快的;但是個別列是和每一行的計算方法一致的,用求和反倒是大錯特錯的,所以要求針對這些個別列按照給定的算法進行計算後顯示在Footer
中。
坑
Footer
有個ValueType
和Value
屬性,彙總類型是通過ValueType
設置的,習慣性的以爲彙總值是通過Value
來讀寫的。
然而,事實並非如此!
對於求和列,DBGridEh1.Columns[i].Footer.Value
的值一直是''
空串,要想取得求和列的彙總值,正確的打開方式是DBGridEh1.GetFooterValue(0,DBGridEh1.Columns[i])
!這簡直是反人類啊有木有!
後記
這是第二次踩這個坑了,記錄下,給自己長點記性!事不過三!!
另外,公司使用的版本比較老,新版本可能沒有這些問題了,不太清楚,暫時沒空去求證。