C# 控制台应用程序要在Windows 10操作系统中打开映像,映像将打开,但无法导航到示例文件夹中的下一个和上一个映像

C# 控制台应用程序要在Windows 10操作系统中打开映像,映像将打开,但无法导航到示例文件夹中的下一个和上一个映像,c#,process,console,photos,C#,Process,Console,Photos,我的环境:桌面计算机中的Windows 10操作系统 我的目的:我在“我的文档”文件夹中有一个“示例图片”文件夹,这个“示例图片”文件夹包含5张图片。我需要打开一个图像(使用C#控制台应用程序),然后导航到“示例图片”文件夹中的下一个和上一个图像 我面临的问题:我能够打开图像,但无法导航到文件夹中的下一张和上一张图片。“下一步”和“上一步”按钮都被禁用。我的意思是图像中的下一个和上一个按钮在Windows 10照片中不起作用。但是,如果我在Windows资源管理器中单独打开同一个图像,我可以导航

我的环境:桌面计算机中的Windows 10操作系统

我的目的:我在“我的文档”文件夹中有一个“示例图片”文件夹,这个“示例图片”文件夹包含5张图片。我需要打开一个图像(使用C#控制台应用程序),然后导航到“示例图片”文件夹中的下一个和上一个图像

我面临的问题:我能够打开图像,但无法导航到文件夹中的下一张和上一张图片。“下一步”和“上一步”按钮都被禁用。我的意思是图像中的下一个和上一个按钮在Windows 10照片中不起作用。但是,如果我在Windows资源管理器中单独打开同一个图像,我可以导航到下一个和上一个图像

示例程序:

我发现下面的代码打开照片应用程序,但我无法打开一个特定的图像。 我正在努力寻找一个完整的解决方案

private static void OpenSamplePhoto()
{
    string samplePicturesPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "Sample_Pictures");

    string picturePath = Path.Combine(samplePicturesPath, "sample1.JPG");

    ProcessStartInfo info = new ProcessStartInfo();
    info.FileName = @"ms-photos://";
    info.Arguments = picturePath;
    info.UseShellExecute = true;
    info.CreateNoWindow = true;
    info.Verb = string.Empty;

    Process.Start(info);
}

我正在使用作为参考。

您需要使用
Directory.EnumerateFiles()
方法获取/枚举目录中的所有文件的代码,然后需要一种分配图像/获取下一个或上一个的方法,根据您当前图像列表中未按名称选择的文件,根据您的问题,您的问题在于按钮,但我没有看到按钮的代码。但是Methodman在如何枚举上是正确的。好的,那么你想用默认的图像查看器打开该文件,并能够在它们之间移动吗?我用自定义位置测试了你的代码,有两个图像,我可以这样做,但打开的图像有两次-我必须单击“下一步”按钮两次才能显示第二个。我在W7上测试,默认文件浏览器,CommonPictures文件夹中的示例图像,一切正常。尝试将info.workingDirectory更改为pictures文件夹。