datagridview中的图像再次出现

时间:2014-05-05 17:20:40

标签: image datagridview

我需要一个相当简单的问题的建议 - 我想在datagridview单元格中绘制图像。

问题是行数可能相当大:最多100 000行,有时甚至更多。

我尝试使用CellFormating但在这种情况下网格闪烁。我试图设置DoubleBuffered = true但它只是更糟糕 - 窗口挂起,CPU使用率显示为100%。其他控件停止绘制自己。此外,它没有帮助闪烁太多(甚至在几行)。

所以我尝试使用源DataTable并添加了一列。比我填充图像。但这是一次失败:应用程序内存在一个大型数据表上变得非常快,它只是崩溃了。

此外,我尝试使用DataSourceChanged事件和设置图像行[cell] .Value =。它会发射,但网格工作很奇怪:有时会显示图像,有时则不会。我读到你必须设置底层数据才能使其正常工作,但是在我写这篇文章时它会引起内存问题。

到目前为止,我已将图片更改为文字,但我当然希望拥有用户友好的用户界面。

在这种情况下我该怎么办?可能我应该放弃图像或改变显示逻辑?即使用虚拟模式。我很久以前就尝试过使用它,但是我遇到了一些困难所以我只是跳过这种方式,我的网格工作在非虚拟模式下。

1 个答案:

答案 0 :(得分:0)

好的,我最终使用了CellFormatting事件。没有我的帮助,看起来眨眼就消失了。图像看起来很好。