ListControl添加坐标轴变换功能

ListControl添加坐标轴变换功能

    今天给ListControl重构了一下,现在数据源、样式、排版和坐标轴变成了正交的四个模块。举个例子,只需要写一个针对同等行高从上到下的排版算法,那么通过坐标轴变换功能,就可以同时获得四种方向的排版了。这种功能是相当常见的。对于ListView那种块状排版来说,坐标轴变换可以获得八种方向的排版。最新的代码发布在了Vczh Library++3.0(Candidate\GUI\GuiDemo\GuiDemo.sln)贴图如下:









    GacUI的列表控件通过替换数据源、样式、排版和坐标轴变换等方式,可以被配置成普通列表、ListView、TreeView、甚至是更复杂一点的带折叠的ListView等等。而且它们都是基于Virtual List的,因此可以无压力显示超大数据源的内容。当然,这需要排版功能的配合,所以我最近一直在给列表控件编写预定义的很多数据源、样式、排版和坐标轴变换。这样就可以立刻拥有基本的控件了。如果要扩展的话,只需要把各种组合替换一下,或者自己编写一个样式,就可以得到很多好用的列表控件了(譬如说添加一个checkbox到ListViewItem上面)。

    Win7资源管理器那个ListView的ColumnHeader的样式已经开发完毕了,最后只要通过编写一个样式,就可以补上ListView剩下的最后那一个Detail模式了。

你可能感兴趣的:(ListControl添加坐标轴变换功能)