我正在使用绑定到对象(实体)的GridView。网格可以过滤,也可以根据显示的数据进行自定义。行,列以及更具体的单元格将使用某些规则进行格式化,但也可以从用户专门设置格式化选项进行格式化。
我的问题是回忆特定单元格所选格式的最佳方法。目前我最好的方法是为每个单元格存储一个id,查找该单元格的所有格式(即ForeColor,BackColor,FontWeight等)。
另一种方法是创建一个新表(称为Formatted_Cells),它存储有问题的表的id和列名,然后是格式化选项。这将涉及每次处理单元格时检查Formatted_Cells表以检查格式。这是一个相当多的处理(类似于上述方法)。如果我这样做,我可以标记任何具有自定义格式的行,如果它们不这样做,我就不需要检查Formatted_Cells表,它确实比记住每个单元格的格式提供了优势,当绝大多数都没有任何自定义时格式化。
有更好的方法吗?我不认为我可以使用序列化来帮助从数据库加载网格,可以在其他地方修改。但也许我错过了一些明显的东西?
非常感谢。
答案 0 :(得分:1)
我还建议另外一张表。
我想到了两种可能的解决方案:
1-在两遍中进行格式化。首先正常加载网格,然后从数据库中读取Formatted_Cells表,在网格中查找样式行并应用特殊样式。
2-在为单元格查询数据库时,使用左连接添加Formatted_Cells表。加载网格时,检查可能来自左连接的其他列,然后应用这些列。如果没有其他列,通常会设置样式。