[WPF系列]-Adorner】的更多相关文章

  简介 通常我们想对现有的控件,做些修饰时我们就会想到一个装饰模式.WPF中也提供了这样的实现思路:通过将Adorner添加到AdornerLayer中来实现装饰现有控件的效果.如图示:   本来TextBox四角没有圆点,但是通过装饰器可以为它加上.所以可以看成在TextBox上加了层.   这样就"无痛"的给控件进行了装饰(如果不想要,还可以随时拆掉,哈哈).当然应用不单单这样加几个点而已,修饰嘛比如拖动控件的修饰.   编程方式给指定UIElement添加装饰器 此示例演示如何…
引言 项目中有时需要在图片上标注热区,在HTML中有<area>标签,但在WPF中目前还没现成的控件来实现这这一功能.至于图片热区功能有道词典的[图解词典]是个不错的例子,如图1: 图 1 什么是Adorner? Adoner 是一个绑定到某个UIElement自定义的FrameWorkElemnt .Adoner被渲染在AdornerLayer,而AdornerLayer又被渲染在被装饰的Element或者Element集合上面.Adorner的渲染独立于它所装饰的UIElement.Ado…
引言 WPF技术已经算不什么新技术,一搜一大把关于WPF基础甚至高级的内容.之前工作中一直使用winform所以一直没有深入学习WPF,这次因项目中使用了WPF技术来实现比较酷的展示界面.我在这里只是把个人学习WPF的过程做些总结,同时也为想我这样的初学WPF的提供一点帮助.不足之处还请大家指教. 学习工具 俗话说:“工欲行其事,必先利其器”,在学习WPF时我们应该找几个工具提高我们的学习和开发效率. kaxaml 一个实时查看xaml代码和呈现的工具.可从这里下载http://www.kaxa…
引言 本文就WPF中的ListBox常用项给以实例代码演示,包括隐蔽属性的设置,Style设置,以及ControlTemplate的自定义.   Listbox平滑滚动 <ListBox ItemsSource="{Binding ActorList}" Width="300" ScrollViewer.CanContentScroll="False"/> 或者 <ListBox.Template> <Control…
到目前为止,我们仅讨论如何绑定和显示单个集合. 某些时候,您要绑定的集合包含其他集合. HierarchicalDataTemplate 类专用于 HeaderedItemsControl 类型以显示这样的数据. 实例演示 在下面的示例中,ListLeagueList 是 League 对象的列表. 每个 League 对象都有一个 Name 和 Division 对象的集合. 每个 Division 都有一个 Name 和 Team 对象的集合,并且每个 Team 对象都有一个 Name. <…
  引言 书接上回[WPF系列-数据邦定之DataTemplate],本篇介绍如何根据属性切换模板(DataTemplate)   切换模板的两种方式:   使用DataTemplateSelector来切换模板 使用DataTrigger来实现模板切换. 使用Style来是实现模板切换   A DataTemplateSelector does not respond to PropertyChange notifications, so it doesn't get re-evaluated…
引言 项目经常会用Treeview来组织一些具有层级结构的数据,本节就将项目使用Treeview常见的问题作一个总结. DataBinding数据绑定 DataTemplate自定义 <HierarchicalDataTemplate DataType="{x:Type viewModels:FieldViewModel}" ItemsSource="{Binding SubViewModels}"> <StackPanel Orientation…
原文:WPF系列教程--(三)使用Win10 Edge浏览器内核 - 简书 在需要显示一些 H5网站的时候自带的WebBrowser总是显示不了,WebBrowser使用的是IE内核,许多H5新特性都不支持,然后使用谷歌内核和火狐内核会使软件的体积增加至几十M,为了显示一个网页而牺牲这么大的空间是不值得的. 在新建项目的时候需要.NET Framework 4.6.2版本 图片.png 在NuGet中搜索Microsoft.Toolkit.Win32.UI.Controls,添加进项目 图片.p…
原文:WPF系列教程--(一)仿TIM QQ界面 - 简书 TIM QQ 我们先来看一下TIM QQ长什么样,整体可以将界面分为三个部分 TIM QQ 1. 准备 阅读本文假设你已经有XAML布局的基础,所以只对部分布局进行说明. 界面上的图标均来自 Material Design Icons 选择需要的图标后点击View XAML 图片.png 会显示WPF的调用代码,直接复制到项目中即可,WPF是支持矢量图显示的. 图片.png 本文中的控件使用了开源的MaterialDesignInXam…
原文:WPF系列教程--(二)使用Prism实现MVVM设计模式 - 简书 本文假设你已经知道MVVM设计模式是什么,所以直接进入正题,今天我们就用Prism来实现WPF的MVVM设计模式,百度上关于Prism的教程少之又少,仅有的几个教程也是使用的很古老的版本,反正也是看不懂写的啥玩意,下面以最简洁明了的代码来演示事件绑定和数据绑定. 1. 准备 使用上一节的Demo,来继续完成本节教程WPF系列教程--(一)仿TIM QQ界面 Prism Prism是一个MVVM框架,它包括,依赖注入(通过…