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>

这个时候的显示效果为:

相关推荐
YHL3 分钟前
🧊 CSS 3D 硬核解析:四个属性手写旋转立方体
前端·css·html
烂白菜4 分钟前
智码美形:华为云码道 × UI-UX-Pro-Max 高品质界面智能生成实践
ui·华为云·ux
毛骗导演5 分钟前
Tool Boundary:如何让大模型永远不知道也不会泄露用户敏感数据
前端·架构
零瓶水Herwt6 分钟前
代替vue-currency-input使用原生货币符号
前端·vue.js
z落落7 分钟前
C# FileStream文件流读取文件
开发语言·c#
Moment11 分钟前
从多人编辑到 Agent 写文档,Hocuspocus v4 正在改写协同系统 😍😍😍
前端·后端·面试
星环科技23 分钟前
数据标准Agent ,让企业数据说同一种语言
java·开发语言·前端
橘子星28 分钟前
深入理解 AJAX 中的 JSON 序列化与 JS 异步处理
前端·javascript·后端
旧曲重听132 分钟前
2026前端技术从「夯」到「拉」
前端·程序人生·职场和发展·软件工程