向右到左的ListView项添加图标会导致图标在C#WinForms

时间:2017-03-20 17:33:48

标签: c# winforms listview

我有ListView。其RightToLeft属性设置为Yes,其RightToLeftLayout设置为TrueListView填充了目录中的文件。

在我的代码中,我使用System.Drawing.Icon.ExtractAssociatedIcon(string filePath)获取文件的相应图标并将其分配给文件。这意味着该图标直接来自操作系统。我没有自定义图标的目录。

结果是这样的: Demonstration

如您所见,PowerPoint文件图标被翻转。当我将布局更改为LeftToRight时,它会完美显示。我该如何解决?

感谢。

1 个答案:

答案 0 :(得分:1)

如果您只需要反转图标,我建议将其放入Bitmap,然后使用Bitmap.RotateFlip将其水平翻转。

Bitmap bm = System.Drawing.Icon.ExtractAssociatedIcon(string filePath).ToBitmap();
bm.RotateFlip(RotateFlipType.RotateNoneFlipX);