在 XAML 代码中,我们偶尔会看到 AutomationProperies 的代码,如 AutomationProperties.Name="xxxxx", AutomationProperites 作为一个类,它里面包括若干个附加属性.这些属性可以为UI自动化测试框架 (Microsoft UI Automation accessibility framework) 提供有价值的信息,并且提高了应用的可访问性. 本文整理了以下几个关于 AuotmationProperties.Na…
有很多项目,都有数据筛选的操作.下面提供一个案例,给大家做参考. 左侧是数据源,搜索框加TreeView控件,右侧是ListBox控件.在左侧数据列点击添加数据,然后点击确定,得到所筛选的数据. 下面直接看代码吧,比较好理解~ 筛选控件做成用户控件,当然也可以直接放在主界面,如果不复用的话.数据源都是固定的,实际用的话,新建个ViewModel将数据源绑定就行了. 1.筛选控件界面: <UserControl x:Class="WpfApplication17.SelectControl&…
本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种布局,在子元素数量未知的情况下,我们应该使用WrapPanel或者StackPanel来布局,子元素会自己换行. 2.然后每一行的元素中,第一个要居左,第二个要居中,第三个要居要.这个应该通过Grid来布局,添加三列,然后对应的元素在每列中设置水平方向. 下面是代码: 1.界面: <Window x…
需求是第一列锁定,那么怎么让锁定列不跟着滚动条向做移动呢? 其实很简单,让锁定列跟scrollviewer的滚动做反方向移动. 先看一下这个控件的模板,嗯,其实很简单,就是ListView的模板,不同的是ScrollViewer 加上了TopHeader作为Column header. <Border x:Name="RootBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness=…
还是先上效果图: 看完了上一篇UWP Composition API - GroupListView(一)的童鞋会问,这不是跟上一篇一样的吗??? 骗点击的?? No,No,其实相对上一个有更简单粗暴的方案,因为上篇是为了研究Composition API,所以含着泪都要做完(有没有被骗的赶脚)..( ╯□╰ ) 那是有没有简单点的方法呢?? 嗯,看到这篇,那答案肯定是Yes. 我再啰嗦下需求: 1.Group中的集合需要支持增量加载ISupportIncrementalLoading 2.支持…
需求: 光看标题大家肯定不知道是什么东西,先上效果图: 这不就是ListView的Group效果吗?? 看上去是的.但是请听完需求.1.Group中的集合需要支持增量加载ISupportIncrementalLoading 2.支持UI Virtualization oh,no.ListView 自带的Group都不支持这2个需求.好吧,只有靠自己撸Code了.. 实现前思考: 仔细想了下,其实要解决的主要问题有2个数据源的处理 和 GroupHeader的UI的处理 1.数据源的处理  因为之…
最近在做的一个项目需要用到下拉刷新,但是参考了现在网络上比较普遍的方法,觉得都不太好,因为要在外部套上一个SrollViewer,容易出现滚动错误.于是刚开始的时候就把思路定到了ListView内部的ScrollViewer上. 最初的想法是在ScrollViewer的Manipulation相关事件上下手,确实做好了,效果也不错,如图: 当时得意满满的看着自己的作品,心里是说不出的激动啊,结果放在手机上想试试触屏设备的效果,结果发现好坑爹:在触屏设备上,手指在ListView的上下滑动默认是移…
uwp自带的button本身不支持圆角属性,所以要通过自定义控件实现. 通过设置Button的Background=“{x:Null}”设置为Null使背景为空,再设置Button.Content中的内容,采用如下代码方式: 前端代码: <UserControl x:Class="Test.UWP.ExtendControls.UWPButton" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentat…
在Win10之前,WP平台的App主要有枢轴和全景两种导航模式,我个人更喜欢Pivot即枢轴模式,可以左右切换,非常方便.全景视图因为对设计要求比较高,自己总是做不出好的效果.对于一般的新闻阅读类App来说,Pivot更适合多个频道的展示,因为内容基本都是一样的. 到了Win10,微软模仿其他平台也推出了汉堡菜单,但并没有提供现成的控件,而是需要开发者通过一个名为SplitView的控件来实现.我个人并不觉得左上角的菜单有多么方便,汉堡菜单的使用必然会改变以前的导航模式,比如以前底部的AppBa…
2016年11月6日 更新: 其实 这个有一个非常简单的方法.非常简单... ListView SelectionMode="Multiple" 这个一XAML  代码就可以解决了.. 制作侧边点击效果也是和上一个一样的,等我找时间 弄一下 建议使用ItemsControl作为列表,使用ListView的时候,ListView的方法ContainerFromItem会在当数据超出15的时候出现错误  实在是没招使用了ItemsControl外套上ScrollViewer就可以了,然后将…
摘要 要开发一款优秀的application,控件肯定是必不可少的,uwp就为开发者提供了各种各样的系统控件,AutoSuggestBox就是uwp极具特色的控件之一,也是相对于之前win8.1的uap较新的控件,今天我们就来谈谈AutoSuggestBox的基本用法及其自定义UI方法. A Simplest Sample 话不多说,先来个小Demo. <!-- MainPage.xaml --> <Page x:Class="AutoSuggestBoxSample.Main…
一.前言 申明:WPF自定义控件与样式是一个系列文章,前后是有些关联的,但大多是按照由简到繁的顺序逐步发布的等,若有不明白的地方可以参考本系列前面的文章,文末附有部分文章链接. 本文主要内容: ScrollViewer的样式拆解及基本样式定义: ListBox集合控件的样式定义: 二.ScrollViewer自定义样式 ScrollViewer在各种列表.集合控件中广泛使用的基础组建,先看看效果图: 如上图,ScrollViewer简单来说分两部分,一个横向的滚动条,一个垂直滚动条,两个样式.模…
[源码下载] 背水一战 Windows 10 (7) - 控件 UI: VisualState, VisualStateManager, 控件的默认 UI 作者:webabcd 介绍背水一战 Windows 10 之 控件 UI VisualState 和 VisualStateManager 控件的默认 Style, ControlTemplate, VisualState 示例1.演示“VisualState 和 VisualStateManager”相关知识点Controls/UI/Vis…
VisualState 和 VisualStateManager 控件的默认 Style, ControlTemplate, VisualState 示例1.演示“VisualState 和 VisualStateManager”相关知识点Controls/UI/VisualState/VisualStateDemo.xaml <Page x:Class="Windows10.Controls.UI.VisualState.VisualStateDemo" xmlns="…
在UWP开发中,微软提供了新的用户许可验证方式-指纹(生物识别).Pin.密码验证.在爆料的新型Win10 Mobile移动设备中,会增加虹膜识别等先进的用户身份识别技术,微软现在统一了身份验证的API,将生物识别认证和传统的密码识别封装为系统API供开发者调用,调用者只需关心认证的结果,而无需担心用户使用的是虹膜识别还是指纹还是密码等其他的识别技术. 通过UserConsentVerifier类可以提高应用程序的安全性,例如,你可以授权应用程序的购买,或者访问受限制的资源之前需要指纹验证.下面…
本篇我们来了解一下Windows 8.1 给应用的视图状态带来了哪些变化,以及我们怎么利用这些变化作出更好的界面视图. 首先我们来简单回顾一下Windows 8.0 时代的视图状态:     上图中,从左到右依次是Windows 8 应用的三种视图状态:Full Screen, Snapped 和 Filled. 其中Snapped 和 Filled 状态只能显示在横向分辨率在1366像素或更高的屏幕中.而Snapped视图固定宽度为320像素. 我们对视图状态的判断和使用主要会用到Applic…
最近有一个需求,需要制作这么一个 AppBarButton: 这个 AppBarButton 的 Icon 是一个评论框图标里面再显示评论数(大于 99 条则显示 99+).其中评论数是通过数据绑定得来的. 要单独显示这个评论框图标或者单独显示评论数都不是难题,然而要同时显示这两者就成了一个大问题了,因为 AppBarButton 的 Icon 属性只能设置一个.再看看 Icon 属性的类型,是 IconElement 这个类.但是,这个类的构造函数是内部的,我们也没法继承它.那么,从 Icon…
[源码下载] 重新想象 Windows 8 Store Apps (37) - 契约: Settings Contract 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 契约 Settings Contract - 右侧边栏称之为 Charm,其中的“设置”称之为 Settings Contract 示例演示 Settings Contract 的应用Contracts/SettingsContract/Demo.xaml <Page x:Class="…
[源码下载] 重新想象 Windows 8.1 Store Apps (75) - 新增控件: Hub, Hyperlink 作者:webabcd 介绍重新想象 Windows 8.1 Store Apps 之新增控件 Hub - 中心控件(由一个 header 和多个 section 组成) Hyperlink - 超链接控件(在 RichEditBox, RichTextBlock, RichTextBlockOverflow 内使用) 示例1.演示 Hub 的应用HubDemo.xaml…
Shell框架XECA shell.xaml主要起到是一个容器或壳的作用 <Window x:Class="XECA.Shell"      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"                xmlns:in…
最终实现的效果如下: 添加MenuDataSource.cs,字段ImageStyle是用来标识套用的样式 public class MenuGroup { public string GroupTitle { get; set; } public ObservableCollection<MenuItem> ItemContent { get; set; } } public class MenuItem { public string ImageUrl { get; set; } publ…
Hub(中心) 中心页是用户进入应用的入口点.中心页在丰富的平移视图中显示内容,这样用户一眼就能看见新鲜有趣的内容,从而吸引他们深入了解你的应用中的更多内容.中心显示不同的内容类别,每个类别映射到应用的分区页中.每个部分都应该显示内容或功能.中心应该提供许多可以看到的变化,吸引用户,并将他们吸引到应用的各个部分. XAML Hub 控件提供元素帮助你为应用更轻松地实现中心设计模式.与从单独源显示数据的 GridView 或 ListView 控件不同,每个中心分区都可显示来自不同源的数据.任何…
感觉自我表述能力有欠缺,技术也不够硬,所以之后的Windows8应用开发学习札记的文章就偏向于一些我认为较难的地方和重点了多有抱歉. 上节课是入门,这节课就已经开始进行视图设计了. Windows应用的三种常用的数据展示控件:FlipView.ListView和 GridView. FlipView是用来显示集合数据的控件,用户可以点击上/下或者左/右按钮实现子窗口间的切换. 值得一提的是包括后面要介绍的两个控件,这三个均继承自ItemsControl类.但需要注意的是:不要使用FlipView…
1.说明 自己学习WPF不是很久,现将自己做的一些小项目中用到的自定义控件整理出来,方便以后使用,不尽人意之处,还请多多批评与指导,现在就来实现自定义ScrollViewer仿Win8滚动条 2.效果预览 1)横纵预览               2)MouseOver                  3)拖动中  3.XAML代码 <!--x:Key="ScrollBarThumb" TargetType="{x:Type Thumb}"--> &l…
我们介绍了 XAML 语法规则,以及用于描述 XAML 语法中存在的限制或选项的术语.当出现以下情况时你会发现本主题很有用:不熟悉 XAML 语言的使用,希望加强对术语或某些语法部分的理解,或者对 XAML 语言的工作原理感兴趣,因而希望了解更多背景知识. XAML 是 XML XAML 的基本语法基于 XML,且定义有效的 XAML 必须也是有效的 XML.但是,XAML 也有自己的用来扩展 XAML 的语法概念.给定的 XML 实体可能在纯 XML 中有效,但该语法在 XAML 中可能具有不…
动手实验 实验7:磁贴和通知 2012年9月 简介 磁贴是Windows应用商店应用用户体验的重要元素.当应用程序被安装后,它的磁贴将在Windows 8开始屏幕被创建.该磁贴(称为主磁贴)作为启动应用程序的快捷方式.默认情况下,主磁贴的图像来自Logo.png文件,它由Visual Studio包含在Window应用商店项目中.图像大小为150X150像素,并由它创建了一个正方形磁贴.然而,通过向项目添加一个310X150的图像并在应用程序清单中将它指定为“宽徽标”,您可以同时在应用程序中包含…
原文:重新想象 Windows 8 Store Apps (3) - 控件之内容控件: ToolTip, Frame, AppBar, ContentControl, ContentPresenter; 容器控件: Border, Viewbox, Popup [源码下载] 重新想象 Windows 8 Store Apps (3) - 控件之内容控件: ToolTip, Frame, AppBar, ContentControl, ContentPresenter; 容器控件: Border,…
原文:Windows 8实例教程系列 - 自定义应用风格 在Windows 8 XAML实例教程中,曾经提及过应用风格设计方法以及如何创建可复用样式代码.本篇将深入讨论如何创建自定义Windows8应用风格. 随着计算机硬件性能的提升,用户对于软件应用的体验性要求越来越高,而应用的风格设计也成为衡量应用成功与否的一个标准. 模板样式基础 在XAML实例教程中曾介绍过,Windows8样式应用可以根据应用范围不同进行分类, 1. 局部资源(Page Resources),该样式模板代码位于当前页面…
原文:快速构建Windows 8风格应用24-App Bar构建 本篇博文主要介绍构建AppBar基本步骤.如何构建AppBar.如何在AppBar中构建上下文命令.如何在AppBar中构建菜单.如何构建页面间共享AppBar. 构建应用栏的目的的显示导航.命令和始终隐藏不需要的使用的工具.我们可以把应用栏放在页面顶部或底部或同时存在顶部和底部. 默认情况在AppBar是隐藏的,当用户单击右键.按下Win+Z.或从屏幕的顶部或底部边缘轻松时可显示或关闭AppBar.当然我们也可以通过编程的方式将…
原文:快速构建Windows 8风格应用32-构建辅助磁贴 引言 Windows Phone中,我们开发者可能会开发的一个功能点是将数据列表中某一项"Pin To Start(固定到开始屏幕)",大家都知道这种固定到开始屏幕的磁贴叫做辅助磁贴(也叫二级磁贴),用户可以通过该辅助磁贴启动应用程序并导航到应用程序中某一个页面或某一位置. 其实Windows 8 Store风格应用程序也引入了辅助磁贴的概念,用户在使用Windows 8 Store应用的辅助磁贴和Windows Phone…