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>

这个时候的显示效果为:

相关推荐
娇气的红酒3 小时前
关于.NET VS JavaEE平台争论的沉思录
java·java-ee·.net
单薄的衬衫3 小时前
前一篇:详解 .NET 异步
.net
懒得不想起名字3 小时前
flutter 使用go_router 和 page_transition定义页面动画
前端
逝水无殇3 小时前
C# 多态性详解
开发语言·后端·c#
逝水无殇3 小时前
C# 继承(Inheritance)详解
开发语言·后端·c#
多加点辣也没关系3 小时前
JavaScript|第6章:流程控制语句
开发语言·前端·javascript
csj503 小时前
前端基础之《React(11)—state声明式》
前端·react.js
程序员晓琪3 小时前
深入解析:从 Webpack 到 Vite,多入口多端项目的工程化迁移实战
前端·webpack·vite
涛涛ing3 小时前
Vue 3.6 还没正式发布,但前端的方向已经被它定下来了
前端
LT10157974443 小时前
2026年手机机型兼容性测试选型指南:安卓机型碎片化、APP闪退UI错乱如何解决
android·测试工具·ui·智能手机