简体   繁体   中英

C# DataGridView - Transparent Image

I am attempting to populate a DataGridView cell with an image. The image is a 32bit png with Alpha Transparency.

I can get this image to display properly in a picturebox or a Listview but in the DataGridView the image loses quality.

I have tried setting various parts of the control to transparent but nothing seems to work. I import the image into resource file and then call it directly.

I have a feeling I need to override the onpaint event to resolve the transparency/color depth issue but I'm not entirely sure.

I would appreciate any help!

The top image is that from a picturebox and the bottom two are in the DataGridView.

*Since I am unable to use an image tag, please see the following link for an example of the problem

http://bytes.com/attachments/attachment/2016d1245038555/imageissue.png

I have tested with a lower resolution gif and it looks acceptable. The PNG I was using is 32-Bit (with 8 bits alpha channel) and I think this is simply out of the depth that the DataGridView Image Column can handle.

Thanks to everyone who offered their input. It is very much appreciated!

I came across the same problem. My 32 bits png image looked horrible in a DataGridView. What I did is convert my png file to the .ico format (I used http://www.convertico.com/ ), and then added it to the grid.

What I did is set displayCell.ValueIsIcon = True to make the DataGridViewImageCell treat my image as an Icon.

And that did it for me. The icons look good now...

I'm not sure about this, but it appears that this might be a resizing issue rather than a transparency issue (or a problem with the resizing/transparency interaction). Try using a PNG file that has exactly the same pixel-by-pixel dimensions as the size to which it's rendered in the DataGridView.

我使用ImageList遇到了这个问题,一旦我切换到Bitmap数组,它运行正常。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM