UWP如何将图像列表从不同的文件夹上传到不同的数据透视表

时间:2018-09-19 04:43:00

标签: c# xaml uwp windows-10-universal

我正在创建UWP App图片库,我想上传图片列表 用一种方法将文件夹位置更改为用一种方法乘以PivotItems

  public async void precargar()
    {
          List<StackPanel> spanel = new List<StackPanel>();
        IReadOnlyList<StorageFile> files = await Imagefolder.GetFilesAsync();
        foreach (var item in files)
        {
            StackPanel stack = new StackPanel();
            StorageItemThumbnail thumbnail = null;
            try { thumbnail = await item.GetThumbnailAsync(ThumbnailMode.PicturesView); }

            catch (Exception) { System.Diagnostics.Debug.WriteLine("esto es un error lo sentimos"); }

            BitmapImage bi;
            if (thumbnail == null)
            {
                bi = new BitmapImage(new Uri("ms-appx:///wallpaper/2.png"));
            }
            else
            {
                Stream stream = thumbnail.AsStream();
                bi = new BitmapImage();
                await bi.SetSourceAsync(stream.AsRandomAccessStream());
            }

            Image image = new Image() { Width = 300 };
            image.Source = bi;
            stack.Children.Add(image);
            spanel.Add(stack);
        }
       Viewtiles.ItemsSource = spanel;
    }

上面的代码正常工作 通过这种方式: 我用这种方式将它们加载到界面

public async void CargarFolders()
    {
        Imagefolder = await appInstalledFolder.GetFolderAsync(carpetas[0]);
        precargar();

    }

现在,我想使用该代码通过以下方式使用相同的代码加载其他图像列表:

public async void Naturaleza()
    {
        Imagefolder = await appInstalledFolder.GetFolderAsync(carpetas[1]);
        precargar();
        Naturals.ItemsSource = spanel;
    }

但不起作用。我该怎么办?

1 个答案:

答案 0 :(得分:0)

我认为您应该使用FlipView控件而不是数据透视控件来显示图像。因为FlipView控件具有触摸友好的前进和后退选项。您可以将大量图像设置为FlipView控件。

请通过https://docs.microsoft.com/en-us/windows/uwp/design/controls-and-patterns/flipview