如何获取与文件类型相关联的图标?

7

我有一个表单,它在TabControl中显示文件信息,我希望每个页面的标签上都有文件的图标。那么,如何获取与文件类型相关联的图标呢?

我更喜欢不涉及在注册表中查找信息的解决方案,但如果这是唯一的方法,那就只能如此。

2个回答

12

CodeProject有一些你可以下载的类。

首先获取FileAssociationInfo,然后从中获取ProgramAssociationInfopai对象可以提供图标。

FileAssociationInfo fai = new FileAssociationInfo(".bob");
ProgramAssociationInfo pai = new ProgramAssociationInfo(fai.ProgID);
ProgramIcon icon = pai.DefaultIcon;

看起来不错,但我怎么获取FileAssociationInfo?MSDN上没有任何关于这些类的信息。 - Simon
1
在这里您可以下载这些类:http://channel9.msdn.com/playground/Sandbox/249856-System-File-Association/ - Ikke
我的错,我忘记包含链接了。 - Bill the Lizard
这是一个跨平台的解决方案还是仅限于Windows? - Anderson Green

10

1
这个是只针对Windows的吗?如果是,有跨平台的解决方案吗? - Anderson Green
1
当文件不存在时,这将失败。当文件不存在时,这将成为一个问题 - 因为没有文件。 - Ian Boyd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接