在 Windows Explorer 与 Solution Explorer 中添加图像文件

Adding image files in Windows Explorer vs. Solution Explorer

我有一段代码循环遍历 Images 文件夹中的文件(和文件夹)并在 UniformGrid 中显示缩略图。

当我将图像文件(和文件夹)拖动或添加到 Visual Studio 解决方案资源管理器,然后按 F5 开始调试时,所有图像都会显示。

但是当我将图像添加到 Windows 资源管理器并开始调试时,图像不显示。我尝试刷新解决方案资源管理器、清理解决方案、重建解决方案,甚至重新启动 Visual Studio,但显示的图像和解决方案资源管理器的图像文件夹中列出的图像文件都没有。如果我使用 Directory.GetFiles("../../Images/", "*.jpg", SearchOption.TopDirectoryOnly); 计算添加到 Window Explorer 的图像数量,文件数组的长度确实反映了文件夹中图像的正确数量。

为什么当我在 Windows 资源管理器中添加图像时,解决方案资源管理器和程序都不显示图像?为什么 Directory.GetFiles(...).Length 计算的图像文件数量是正确的?

我试过 运行 Visual Studio 作为管理员和非管理员。

当您 运行 程序时,它不会在您的项目的图像文件夹中查找,它会在输出图像文件夹中查找(很可能在 "bin" 目录下)。当您通过解决方案资源管理器添加图像时,它们会添加到项目中,并且(同样,很可能)在您调试或 运行 您的应用程序时复制到输出目录中的图像文件夹中。

另一方面,当您仅在 Windows 资源管理器中添加它们时,项目不知道它们,因此它不会复制这些文件。您需要 "show all files" 在项目上,然后右键单击新图像并将它们添加到您的项目中。只有这样,它们才会被复制到输出目录,并在您调试应用程序时可供您的应用程序访问。