ListBox显示图片的一些问题

相关:http://t.csdnimg.cn/xTnu8

显示图片的方案就是:自定义一个Photo类,里面有属性Source;View再绑定ViewModel中的Photo集合,再到View中给ListView设置数据模板

关键点:这样做很容易忘记写数据模板

数据模板可以写成下面这样:

XML 复制代码
<DataTemplate DataType="{x:Type local:Photo}">
    <StackPanel>
        <Image Source="{Binding Source}"/>
    </StackPanel>
</DataTemplate>

-- 将这个数据模板放到Window.Resources中也会起作用的,即使ListBox中绑定的是一个Photo类型的集合。

没有数据模板前

添加数据模板后:

如果想要这些图片横向排列,就得设置ItemsPanel

XML 复制代码
<ListBox.ItemsPanel>
    <ItemsPanelTemplate>
        <WrapPanel HorizontalAlignment="Center" IsItemsHost="True"/>
    </ItemsPanelTemplate>
</ListBox.ItemsPanel>

这个时候的显示效果为:

相关推荐
无羡仙9 小时前
从零构建 Vue 弹窗组件
前端·vue.js
唐宋元明清218810 小时前
.NET 磁盘管理-技术方案选型
windows·c#·存储
故事不长丨10 小时前
C#正则表达式完全攻略:从基础到实战的全场景应用指南
开发语言·正则表达式·c#·regex
源心锁10 小时前
👋 手搓 gzip 实现的文件分块压缩上传
前端·javascript
追逐时光者11 小时前
精选 10 款 .NET 开源免费、功能强大的 Windows 效率软件
后端·.net
追逐时光者11 小时前
一款开源、免费的 WPF 自定义控件集
后端·.net
源心锁11 小时前
丧心病狂!在浏览器全天候记录用户行为排障
前端·架构
GIS之路11 小时前
GDAL 实现投影转换
前端
烛阴11 小时前
从“无”到“有”:手动实现一个 3D 渲染循环全过程
前端·webgl·three.js
BD_Marathon11 小时前
SpringBoot——辅助功能之切换web服务器
服务器·前端·spring boot