WPF 与Surface 2.0 SDK 亲密接触–LibraryContainer 篇
最近比较懒惰一直都没写东西,再不写笔里的墨水就快干了。看过前面关于LibraryStack 和LibraryBar 的介绍后,大家可能已经对Library 控件系列有了进一步了解,本篇将继续介绍LibraryContainer,它其实就是LibraryStack、LibrayBar 的集合体。 首先,我们仍然
最近比较懒惰一直都没写东西,再不写笔里的墨水就快干了。看过前面关于LibraryStack 和LibraryBar 的介绍后,大家可能已经对Library 控件系列有了进一步了解,本篇将继续介绍LibraryContainer,它其实就是LibraryStack、LibrayBar 的集合体。首先,我们仍然需要创建一个DataTemplate 用来控制LibraryStack、LibrayBar 的显示样式。然后新建一个LibraryContainer,在其中增加StackView 和BarView 两种浏览模式。
<span><</span><span>s</span><span>:</span><span>SurfaceWindow.Resources</span><span>> <</span><span>DataTemplate </span><span>x</span><span>:</span><span>Key</span><span>="LibraryBarItemTemplate"> <</span><span>Grid </span><span>> <</span><span>Image </span><span>Source</span><span>="{</span><span>Binding </span><span>Bitmap</span><span>}"/> <</span><span>Label </span><span>FontSize</span><span>="14" </span><span>Content</span><span>="{</span><span>Binding </span><span>Label</span><span>}"/> </</span><span>Grid</span><span>> </</span><span>DataTemplate</span><span>> </</span><span>s</span><span>:</span><span>SurfaceWindow.Resources</span><span>> <</span><span>Grid</span><span>> <</span><span>s</span><span>:</span><span>LibraryContainer </span><span>x</span><span>:</span><span>Name</span><span>="mlibraryContainer"> <</span><span>s</span><span>:</span><span>LibraryContainer.StackView</span><span>> <</span><span>s</span><span>:</span><span>StackView </span><span>ItemTemplate</span><span>="{</span><span>StaticResource </span><span>LibraryBarItemTemplate</span><span>}"/> </</span><span>s</span><span>:</span><span>LibraryContainer.StackView</span><span>> <</span><span>s</span><span>:</span><span>LibraryContainer.BarView</span><span>> <</span><span>s</span><span>:</span><span>BarView </span><span>ItemTemplate</span><span>="{</span><span>StaticResource </span><span>LibraryBarItemTemplate</span><span>}"/> </</span><span>s</span><span>:</span><span>LibraryContainer.BarView</span><span>> </</span><span>s</span><span>:</span><span>LibraryContainer</span><span>> </</span><span>Grid</span><span>> </span>
LibraryBar 一样我们继续使用分组的浏览模式,按GroupName 进行分组操作,PhotoAlbum 类请参考这里。
<span>ObservableCollection</span><<span>PhotoAlbum</span>> items = <span>new </span><span>ObservableCollection</span><<span>PhotoAlbum</span>>(); <span>string </span>imagesPath = <span>@"C:\Users\Public\Pictures\Sample Pictures\"</span>; items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Hydrangeas.jpg"</span>, <span>"Hydrangeas"</span>, <span>"Nature"</span>)); items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Lighthouse.jpg"</span>, <span>"Lighthouse"</span>, <span>"Nature"</span>)); items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Tulips.jpg"</span>, <span>"Tulips"</span>, <span>"Nature"</span>)); items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Jellyfish.jpg"</span>, <span>"Jellyfish"</span>, <span>"Animal"</span>)); items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Koala.jpg"</span>, <span>"Koala"</span>, <span>"Animal"</span>)); items.Add(<span>new </span><span>PhotoAlbum</span>(imagesPath + <span>"Penguins.jpg"</span>, <span>"Penguins"</span>, <span>"Animal"</span>)); mlibraryContainer.ItemsSource = items; <span>ICollectionView </span>defaultView = <span>CollectionViewSource</span>.GetDefaultView(items); defaultView.GroupDescriptions.Add(<span>new </span><span>PropertyGroupDescription</span>(<span>"GroupName"</span>));
运行效果:
按分组选择:
点击下方按钮切换为BarView 模式:
作者:李敬然(Gnie)
出处:{GnieTech} (http://www.cnblogs.com/gnielee/)

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

9月8日消息,微软于今年4月宣布,将停止生产和销售Microsoft品牌的配件,其中包括鼠标、键盘和摄像头,未来将专注于Surface品牌的电脑配件。不久前,国外科技媒体mspoweruser报道了一项关于微软无线显示适配器的最新情况。根据他们的报道,在美国地区的MicrosoftStore中,微软无线显示适配器已经售罄,而后续补货的可能性似乎不大。微软无线显示适配器是一款曾备受欢迎的产品,它可以轻松将兼容Miracast的设备连接到高清电视或显示器上,使用户可以分享他们平板电脑、笔记本电脑或智

用于build22523的新Windows11SDK透露,微软正在为Windows11开发新的模糊效果。该效果称为Tabbed,并且是对Acrylic和Mica的补充。22523SDK中的新DWMWA_SYSTEMBACKDROP_TYPE、云母、亚克力的公共Win32API及其奇怪的新“选项卡”混合:pic.twitter.com/dbsu7ZFiIi-一切都回来了(@StartIsBack)2021年12月15日可以在以下SDK的示例应用程序

WPF是微软开发的一种基于.NET Framework的桌面应用程序开发框架。它提供了丰富的用户界面元素、数据绑定和动画等功能,使得开发者可以轻松地创建高质量的桌面应用程序。

掌握Java海康SDK二次开发的必备技巧引言:随着信息技术的迅猛发展,视频监控系统在各个领域得到了广泛的应用。而作为国内领先的视频监控解决方案提供商,海康威视的产品和技术一直在市场中占据着重要的地位。为了满足不同项目的需求,海康威视提供了SDK供开发者进行二次开发。本文将介绍一些掌握Java海康SDK二次开发的必备技巧,并附上相应的代码示例。一、了解海康威视

本站2月20日消息,微软上月停止支持SurfacePro(第五代)之后,近日再次发出提醒,表示将于2024年2月28日停止支持SurfacePro7,不再为其推送新的固件更新。本站注:SurfacePro7于2019年发布,使用英特尔第10代酷睿处理器,最高选配16GBRAM和1TBSSD。该产品支持快速充电、满电可以续航一整天,官方主打随开即用功能,你可以随时随地继续工作。SurfacePro7已经享受了近五年的定期固件更新,在2月28日之后,微软不再向该设备推送固件更新,修复关于该设备的特定

WindowsAppSDK是一组工具和API,开发人员可以在其Windows应用程序中使用这些工具和API,以便在使用Windows10(版本1809及更高版本)和Windows11的各种设备上提供“一致”的功能。了解它确实很重要它不会取代现有的应用程序类型,例如.NET或WindowsSDK,它只是提供一个统一的API工具集,可以用来补充您现有的应用程序。今天,微软发布了具有许多新功能的WindowsAppSDK1.2版本。此版本的亮点可能是第三方开发人

sdk全称“Software Development Kit”,中文意思为“软件开发工具包”,是由硬件平台、操作系统(OS)或编程语言的制造商提供的一套工具。SDK可协助软件开发人员面向特定的平台、系统或编程语言创建应用。一个基本的SDK通常由编译器、调试器和应用编程接口(API)组成,但也可能包含其他内容,比如:文档、库、运行时/开发环境、测试/分析工具、网络协议等。

本站3月23日消息,微软近日发布了SurfacePro10商用版,国行起售价为9888元,其亮点之一就是内置NFC读卡器,用户不再需要输入密码,可以直接使用YubiKey等硬件安全密钥登录、验证用户身份。SurfacePro10商用版在电脑屏幕左上角内嵌了NFC读卡器,目前微软已经和Yubico展开合作,使用YubiKey硬件进行身份验证,而未来将会进一步扩充更多支持品牌和产品。根据微软和Yubico发布的联合公告,SurfacePro10商用版用户只需要把YubiKey放在屏幕左上角,就能登录
