C1FlexGrid:在排序列上绘制排序符号

在上篇文章C1FlexGrid DataMap列自定义排序:中,我们讲述了在C1FlexGrid设置DataMap列后,如何自定义排序。本文就在此基础上,介绍如何按自己的规则绘制排序符号。排序的时候,列依靠排序顺序来进行值排序。因此,你需要根据排序的顺序,给列添加新的排序符号。这就需要使用C1FlexGrid的OwnerDraw事件,比较容易的绘制符号。当单元格重画的时候,这个事件就会被触发。首先,在Form初始化的时候,设置ShowSortPosition为None,并设置DrawMode为OwnerDraw。这样子就放弃原本Sort符号,改由OwnerDraw来画。然后,在OwnerDraw事件里,我们根据排序顺序绘制符号图像在header cell上。