c# - 如何列出目录 C# WPF 中的文件

标签 c# wpf file list listbox

我需要获取没有目录名和文件扩展名的文件列表

C:\ProgramData\Microsoft\Windows\开始菜单\程序

ex)C:\ProgramData\Microsoft\Windows\Start Menu\Programs\7-Zip\7-Zip File Manager.lnk (X)

7-Zip 文件管理器 (O)

并在列表框中列出这些文件。

如果在列表框中选择了文件名,我还必须检索图标并启动程序。

像这样。

http://www.c-sharpcorner.com/UploadFile/7e39ca/display-start-menu-in-windows-8/Images/Start-Menu-Windows8.jpg

谁能帮帮我?

谢谢。

最佳答案

使用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>

要从文件中提取图标,您可以使用 System.Drawing 命名空间中的 ExtractAssociatedIcon:

Icon icon = Icon.ExtractAssociatedIcon(filePath);

关于c# - 如何列出目录 C# WPF 中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15104986/

相关文章:

c# - WPF 中的用户控件与控件模板

c# - 解析查询 SQL Server CE/VS 2010 本地数据库时出错

c# - 如何将 XElement 文档记录放入对象列表中

python - Python 文件中的 Unicode 解码错误

vb.net - FileSystem.GetFiles()+ UnauthorizedAccessException错误?

c# - VS2010添加.dll引用错误

wpf - WPF ResourceDictionary 中 StaticResource 的范围是什么?

c++ - 在 WPF 中托管 native 控件

c# - 即使在外部终止时,也使 WPF 应用程序有机会清理其资源

c++ - 如何在不读取整个文件的情况下查找文件中字符串的长度