频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

OutlookGrid:以Outlook样式分组和排列数据项

来源: 作者: 出处:巧巧读书 2007-10-09 进入讨论组
上一页 1 2 3 4 5 6 7 8 下一页 

  缺少的和未经测试的功能

  因为DataGridView基控件包含众多方法、事件和属性,它们完全被OutlookGrid继承,我没有努力用OutlookGrid的实现来测试它们全部。这意味着:一旦您开始为其它超出本文叙述的功能特性而使用OutlookGrid,您将很有可能遇到bug或功能缺失。

因为我已遇到其中的一些(问题),我将在下面列出我所知道的问题:

  很不幸,OutlookGrid不支持嵌套分组。这就是下一步要做的。

  改变网格的显示风格可能导致分组不能被100%正确地绘出。

  通常,Group(分组)的文本颜色被设置为黑色并且不能改变,您将需要改变OutlookGridRow类中的Paint()方法。

  我没有用VirtualMode(虚模式)测试网格。(译注:VirtualMode属性在 .NET Framework 2.0 版中是新增的。虚拟模式是为使用大型数据存储区而设计的。当 VirtualMode 属性为 true 时,可以创建一个包含大量行和列的 DataGridView,然后处理 CellValueNeeded 事件来填充单元格。虚拟模式要求实现基础数据缓存,以便基于用户的操作来处理 DataGridView 单元格的填充、编辑和删除。详见MSDN。)说实话,我不知道那个概念是如何工作的,因此我怀疑:一旦您开启了VirtualMode(译注:即将其设置为true)数据项还能被正确显示。

  绑定数据源不是直接绑定到DataGridView基控件。因此,数据绑定只为显示数据项工作。然而,一旦您编辑网格中的数据项,数据源将不会被更新。您将不得不自己动手实现更新。

  这也意味着网格中的新数据项将不会自动被添加到数据源。这也将不得不用手工实现。

  为Group的row重写了缺省行,不是所有普通行触发的事件分组的行都能触发。比如,分组行重写OnDoubleClick事件,以自动折叠或展开。不改变代码该行为是不能被触发的。

  毫无疑问这里还有一些其它问题,请向我报告它们,那么我和其它开发者都将可以从中获益。也许,我会投入更多时间开发这个控件的更多功能。

  设计和可扩展性

  在这个部分,我要描述这个控件如何实现的更多细节,特别面向可能要在该控件上做一些编码的开发人员读者。我尝试用VS2005中某些东西弄成类似一个的UML图,但是好吧…这个图将必须做出来。

OutlookGrid:以Outlook样式分组和排列数据项(图三)
点击查看大图

  OutlookGrid

观看地址: http://www.qqread.com/outlook/b350425.html进入讨论组讨论。
上一页 1 2 3 4 5 6 7 8 下一页 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
讨论组问题推荐
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章