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>

这个时候的显示效果为:

相关推荐
~无忧花开~7 小时前
CSS全攻略:从基础到实战技巧
开发语言·前端·css·学习·css3
哈基不哈7 小时前
elpis学习笔记-工程化篇(webpack5)
前端
Misnice7 小时前
CSS Flex 布局中flex-shrink: 0 使用
前端·css
天才熊猫君7 小时前
容器与图片同步旋转:获取真实占位尺寸方案
前端·javascript·vue.js
骑自行车的码农7 小时前
React 是如何协调的 ?
前端
morethanilove7 小时前
小程序-添加粘性布局
开发语言·前端·javascript
久爱物联网7 小时前
【WinForm UI控件系列】Blower 鼓风机控件
ui·ui控件·桌面应用控件·鼓风机控件·winfrom控件
We་ct7 小时前
HTML5 原生拖拽 API 实战案例与拓展避坑
前端·html·api·html5·拖拽
英俊潇洒美少年7 小时前
Vue2业务组件库生产级最佳实践:零依赖+依赖注入方案
前端·vue.js·重构
白日梦想家6817 小时前
定时器实战避坑+高级用法,从入门到精通
开发语言·前端·javascript