我需要获取没有目录名且没有文件扩展名的文件列表
在
C:\ProgramData\Microsoft\Windows\开始菜单\程序
ex)C:\ProgramData\Microsoft\Windows\Start Menu\Programs\7-Zip\7-Zip File Manager.lnk (X)
7-Zip 文件管理器 (O)
并在列表框中列出这些文件。
如果在列表框中选择了文件名,我还必须检索图标并启动程序。
像这样。
有谁能够帮助我?
谢谢。
我需要获取没有目录名且没有文件扩展名的文件列表
在
C:\ProgramData\Microsoft\Windows\开始菜单\程序
ex)C:\ProgramData\Microsoft\Windows\Start Menu\Programs\7-Zip\7-Zip File Manager.lnk (X)
7-Zip 文件管理器 (O)
并在列表框中列出这些文件。
如果在列表框中选择了文件名,我还必须检索图标并启动程序。
像这样。
有谁能够帮助我?
谢谢。
使用Path.GetFileNameWithoutExtension检索文件名
string fileName = Path.GetFileNameWithoutExtension("C:\ProgramData\Microsoft\Windows\Start Menu\Programs\7-Zip\7-Zip File Manager.lnk);
要在列表框中列出图标,请查看 WPF ListView 类。您需要在 XAML 中定义一个模板来显示图像:
<ListView>
<ListView.Resources>
<DataTemplate x:Key="IconTemplate">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Image Grid.Column="0"/>
<TextBlock Grid.Column="1" Text="{Binding Name}"/>
</Grid>
</DataTemplate>
</ListView.Resources>
<ListView.View>
<GridView>
<GridViewColumn CellTemplate="{StaticResource IconTemplate}" Header="Name"/>
<GridViewColumn DisplayMemberBinding="{Binding FileName}" Header="File Name"/>
</GridView>
</ListView.View>
</ListView>
要从文件中提取图标,您可以使用命名空间中的 ExtractAssociatedIcon System.Drawing
:
Icon icon = Icon.ExtractAssociatedIcon(filePath);