【问题标题】:UWP WIndows-10 Loading images in appUWP WINdows-10 在应用程序中加载图像
【发布时间】:2016-05-25 16:05:03
【问题描述】:

我有一个针对 Windows UWP 平台的 C# 应用程序。应用程序在列表视图中显示图像。根据所做的查询,这些图像可以来自任一应用程序的

  1. 容器(/Assets/文件夹)
  2. 在线来源
  3. 本地来源


当图像的源位于应用程序的容器或在线源中时,我可以将图像源绑定到 XAML 中的有效 URI 以获取图像。
当图像的来源是本地时,图像的 url 是专有的,我们使用自己的 imge_fetch api 从我们的服务器获取图像。

我的问题是如何指定 XAML 绑定,该绑定能够获取 uri(当图像来自应用程序的容器或在线源时)或 BitmapImage(由我们的 image_fetch api 返回)


我已经查看了这篇关于 IValueConverter 的帖子
我想知道,UWP 中是否有更好/更简单的方法来实现我想要实现的目标。

【问题讨论】:

    标签: c# xaml visual-studio-2015 windows-10-universal


    【解决方案1】:

    您可以使用object 类型的源属性创建视图模型项类,以便您可以分配stringUriImageSource

    public class ImageItem
    {
        public object ImageSource { get; set; }
    }
    

    在 XAML 中,您可以直接绑定到此属性并受益于内置的自动类型转换:

    <ListBox ItemsSource="{Binding}">
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Image Source="{Binding ImageSource}"/>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
    

    分配图像项我看起来像这样:

    DataContext = new ImageItem[]
    {
        new ImageItem { ImageSource = "ms-appx:///Assets/StoreLogo.png" },
        new ImageItem { ImageSource = new Uri("ms-appx:///Assets/Square150x150Logo.scale-200.png") },
        new ImageItem { ImageSource = new BitmapImage(new Uri("ms-appx:///Assets/Square44x44Logo.scale-200.png")) },
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-16
      • 1970-01-01
      • 2015-11-08
      • 2016-02-29
      • 1970-01-01
      • 1970-01-01
      • 2018-07-06
      • 2018-10-10
      相关资源
      最近更新 更多