【问题标题】:How to list files in directory C# WPF如何列出目录C# WPF中的文件
【发布时间】:2013-02-27 05:40:21
【问题描述】:

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

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

例如)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

谁能帮帮我?

谢谢。

【问题讨论】:

    标签: c# wpf file list listbox


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 2020-01-29
      • 1970-01-01
      • 2013-12-25
      • 1970-01-01
      • 2011-05-11
      • 1970-01-01
      • 1970-01-01
      • 2010-10-30
      • 2012-12-09
      相关资源
      最近更新 更多