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>

这个时候的显示效果为:

相关推荐
小小鸟008几秒前
Vue响应式原理
前端·javascript·vue.js
sali-tec2 分钟前
C# 基于halcon的视觉工作流-章70 深度学习-Deep OCR
开发语言·人工智能·深度学习·算法·计算机视觉·c#·ocr
lee5763 分钟前
鄙人的 Vue 3.0 商业级开源甘特图已经发布到 npm
前端·vue.js·npm·开源·甘特图
前端老曹6 分钟前
vue3 三级路由无法缓存的终终终终终终极解决方案
前端·javascript·vue.js
1024小神7 分钟前
uniapp + vue3 + scss 定义全局样式变量,并使用
前端·uni-app·scss
顾安r8 分钟前
12.17 脚本网页 创意导航
java·linux·前端·游戏·html
武藤一雄8 分钟前
C#中常见集合都有哪些?
开发语言·微软·c#·.net·.netcore
小明记账簿10 分钟前
CSS mix-blend-mode 实现元素融合效果
前端·css
_Kayo_11 分钟前
React 动态显示icon
前端·react.js·react
唐青枫16 分钟前
C#.NET struct 全解析:什么时候该用值类型?
c#·.net