首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
About {DynamicResource {x:Static SystemColors.ControlBrushKey}}
】的更多相关文章
About {DynamicResource {x:Static SystemColors.ControlBrushKey}}
from : http://blog.sina.com.cn/s/blog_749e42850100sahi.html 前提: <system:String x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type res:ItemRes}, ResourceId=Text_ItemID}">Item ID</system:String> public static ComponentResourceKe…
x:Static , StaticResource 和DynamicResource等XAML 扩展用法
原文:x:Static , StaticResource 和DynamicResource等XAML 扩展用法 前提: <system:String x:Key="{ComponentResourceKey TypeInTargetAssembly={x:Type res:ItemRes}, ResourceId=Text_ItemID}">Item ID</system:String> public static ComponentResourceKey Te…
WPF 自定义列表筛选 自定义TreeView模板 自定义ListBox模板
有很多项目,都有数据筛选的操作.下面提供一个案例,给大家做参考. 左侧是数据源,搜索框加TreeView控件,右侧是ListBox控件.在左侧数据列点击添加数据,然后点击确定,得到所筛选的数据. 下面直接看代码吧,比较好理解~ 筛选控件做成用户控件,当然也可以直接放在主界面,如果不复用的话.数据源都是固定的,实际用的话,新建个ViewModel将数据源绑定就行了. 1.筛选控件界面: <UserControl x:Class="WpfApplication17.SelectControl&…
WPF CheckBox样式 ScrollViewer样式 WrapPanel、StackPanel、Grid布局
本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种布局,在子元素数量未知的情况下,我们应该使用WrapPanel或者StackPanel来布局,子元素会自己换行. 2.然后每一行的元素中,第一个要居左,第二个要居中,第三个要居要.这个应该通过Grid来布局,添加三列,然后对应的元素在每列中设置水平方向. 下面是代码: 1.界面: <Window x…
WPF TextBox 搜索框 自定义
更多资源:http://denghejun.github.io <Style x:Key="SearchTextBoxStyle" BasedOn="{x:Null}" TargetType="{x:Type TextBox}"> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlT…
WPF,Silverlight与XAML读书笔记第四十六 - 外观效果之三皮肤与主题
说明:本系列基本上是<WPF揭秘>的读书笔记.在结构安排与文章内容上参照<WPF揭秘>的编排,对内容进行了总结并加入一些个人理解. 皮肤 皮肤是应用程序中样式与模板的集合,可以被整体动态的替换,从而让应用看上去是一种全新的风格.通过皮肤允许第三方任意改变应用程序的外观,WPF并没有内建一个叫皮肤的机制.皮肤及换肤功能可以通过动态资源机制加Style和模板来实现. 下面介绍一个WPF较常见的皮肤定制机制.如果我们希望一个元素的外观可以通过皮肤来定制,我们要将此元素的样式定义为引用动态…
WPF ItemsControl ListBox ListView比较
在进行列表信息展示时,WPF中提供多种列表可供选择.这篇博客将对WPF ItemsControl, ListBox, ListView进行比较. 相同点: 1. 这三个控件都是列表型控件,可以进行列表绑定(ItemsSource): 2. 这三个控件均使用ItemsPresenter来展示列表信息: 不同点: 控件层次关系: ItemsControl: System.Object System.Windows.Threading.DispatcherObject System.Windows.D…
waterMarkTextBox
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:MyWPFCustomControls" > <Style TargetType="{…
WPF之TreeList的实现方法(一)
做项目的时候根据需求,WPF现有的控件不能完全满足我们的需求, 很多时候我们需要对现有的控件做一下加工. 最简单的我们可能会把Tree转换成List形式有的叫Grid形式就像下图一样 今天我先做一个完全用样式加工的例子,有时间我再把它做深加工写成一下通能形式 我们要先把treeView重写一下 public class TreeListView : TreeView { //这两个默认的是TreeViewItem protected override DependencyObject GetCo…
WPF:xmal 静动态资源
<StackPanel.Resources> <SolidColorBrush x:Key="myBrush" Color="Teal"/> </StackPanel.Resources> <!-- StaticResource reference --> <Label Foreground="{StaticResource myBrush}">Label 1</Label>…
WPF-控件-编辑圆角TextBox
使用模板 代码如下: <Window xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aer…
WPF自定义DataGrid分页控件
新建Custom Control,名:PagingDataGrid 打开工程下面的Themes\Generic.xaml xaml里面代码替换如下 <Style x:Key="{x:Type loc:PagingDataGrid}" TargetType="{x:Type loc:PagingDataGrid}"> <Setter Property="Background" Value="{DynamicResourc…
《Programming WPF》翻译 第6章 1.创建和使用资源
原文:<Programming WPF>翻译 第6章 1.创建和使用资源 资源这个词具有非常广泛的意义.任何对象都可以是一个资源.一个在用户界面中经常使用的Brush或者Color可以是一个资源.一段文本或者一个图形也可以是一个资源.没有什么特殊的对象不可以成为一个资源.资源的底层处理机制确保了获取你所需要的资源成为可能,而不闭关心这个资源是什么:同时,这套机制可以简单的识别和定位对象. 资源管理的核心是ResourceDictionary这个类.这是一个相当简单的集合类,就像一个普通的Has…
WPF学习(4)逻辑树和可视树
前面几节说了一些WPF的基础,包括XAML和布局等.在接下来的几节,我们来说说WPF的核心概念,包括逻辑树和可视树.依赖对象和依赖属性.路由事件.命令这几个部分.本节介绍下逻辑树(Logical Tree)和可视树(Visual Tree). 逻辑树和可视树 在WPF中,用户界面是由XAML来呈现的.粗略地讲,从宏观上看,叶子为布局组件和控件所组成的树既是逻辑树,从微观上看,将逻辑树的叶子再放大可看到其内部是由可视化组件(继承自Visual类)组成的,叶子为这些可视化组件组成的树既是可视树. 逻…
WPF之TreeList的实现方法1
WPF之TreeList的实现方法(一) 做项目的时候根据需求,WPF现有的控件不能完全满足我们的需求, 很多时候我们需要对现有的控件做一下加工. 最简单的我们可能会把Tree转换成List形式有的叫Grid形式就像下图一样 今天我先做一个完全用样式加工的例子,有时间我再把它做深加工写成一下通能形式 我们要先把treeView重写一下 ? public class TreeListView : TreeView { //这两个默认的是TreeViewItem …
ListBox设置背景色无效的问题。 listview类似
<Style TargetType="{x:Type ListBoxItem}"> <Setter Property="Template"> <Setter.Value> <ControlTemplate TargetType="{x:Type ListBoxItem}"> <Border x:Name="Bd" SnapsToDevicePixels="true…
WPF Grid布局
本节讲述布局,顺带加点样式给大家看看~单纯学布局,肯定是枯燥的~哈哈 那如上界面,该如何设计呢? 1.一些布局元素经常用到.Grid StackPanel Canvas WrapPanel等.如上这种布局,在子元素数量未知的情况下,我们应该使用WrapPanel或者StackPanel来布局,子元素会自己换行. 2.然后每一行的元素中,第一个要居左,第二个要居中,第三个要居要.这个应该通过Grid来布局,添加三列,然后对应的元素在每列中设置水平方向. 下面是代码: 1.界面: <Window x…
WPF模板(一)详细介绍
本次随笔来源于电子书,人家的讲解很好,我就不画蛇添足了. 图形用户界面应用程序较之控制台界面应用程序最大的好处就是界面友好.数据显示直观.CUI程序中数据只能以文本的形式线性显示,GUI程序则允许数据以文本.列表.图形等多种形式立体显示. 用户体验在GUI程序设计中起着举足轻重的作用-----用户界面设计成什么样看上去才足够的漂亮?控件如何安排才简单易用并且少犯错误?这些都是设计师需要考虑的问题.WPF系统不但支持传统的Winfrom编程的用户界面和用户体验设计,更支持使用专门的设计工具Blen…
重写TreeView模板来实现数据分层展示(二)
前面一片文章实现TreeView的基本的模板重写,那么照着这个思路,我们再来写一个稍稍复杂的TreeView ,其它的内容都和前面系列内容相似,还是和之前文章介绍的一样,首先看看做出的DEMO的最终样式,先来一睹为快. 其实并不复杂,关键的是要准确去理解TreeView这个控件,这个控件的核心是TreeViewItem,那么我们就重点来看看这个样式该怎么写. <Style TargetType="{x:Type TreeViewItem}"> <Setter Prop…
重写TreeView模板来实现数据分层展示(一)
总想花些时间来好好总结一下TreeView这个WPF控件,今天来通过下面的这几个例子来好好总结一下这个控件,首先来看看一个常规的带虚线的TreeView控件吧,在介绍具体如何完成之前首先来看看最终实现的效果图吧! 然后我们来具体分析一下这个是怎样去实现的? 1 修改TreeView的模板层 其实TreeView中最重要的就是TreeViewItem项,这个决定了最终TreeView的展现方式,另外就是TreeView每展开子项时前面的ToggleButton的样式了,因为默认的TreeView样…
WinForm中预览Office文件
WinForm预览Office文档 使用WinForm, WPF, Office组件 原理:使用Office COM组件将Word,Excel转换为XPS文档, 将WPF的DocumentViewer控件寄宿到WinForm中, 实现预览. 1. 新建WinForm项目 2. 新建WPF用户控件, 注意是WPF控件 3. 编辑WPF用户控件 <UserControl ... ...> <Grid> <DocumentViewer x:Name="documentVi…
如何为TreeView定义三层模板并实现数据绑定
一直以来都想对TreeView定义多层模板,并实现数据绑定做一个总结,今天在这里做一个概述,我们常用的两层的TreeView绑定的话,我们首先修改TreeView的模板,这里我们使用的是级联的数据模板,又称之为分层数据模板,这里包含几个重要的属性意义: DataType指定模板用于哪种数据类型 ItemsSource指定该类数据的子集,即下一层显示那些数据 内容 指定数据如何显示 绑定哪个属性 在我们的例子中第一层模板使用的数据类型是local命名空间下的PlayList类,ItemsSourc…
Simple Style
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:d="http://schemas.microsoft.com/expression/interactivedesigner/2006" xmlns:…
WPF DataGridTable
由于项目要显示表头合并,而数据源列随时变更,又不想重复的画表格,就实现动态数据(dynamic)绑定和配置数据列模板的方式 编辑DataGridColumnHeader样式实现表头合并:效果如下 实现思路: 在表头中插入一个Grid,Grid列跟HeaderColmun列数相等,并关联HeaderColmun的SizeChanged事件,Colmun列大小发生变化时,合并的头模板也会跟着移动. <Grid x:Name="PART_ColumnHeadersPresenter_Grid&q…
WPF 为 PasswordBox 控件添加水印,最低级版
原因也很直接,老板需要,一开始为TextBox发愁,就找了这个控件凑合用,至于版权什么的,内部工具也不卖钱,而且我不懂英文,也就无视了: Extended WPF Toolkit™ Community Edition 人家是专业的,所以技术方面我就不研究了,但是,密码框却不能加水印,这倒是挺无聊的. 实在懒得搞控件,就自己写了个样式凑合着用: 提示水印是写死的,毕竟是原生控件,不会搞的就凑合用,看不过去就自己写一个控件吧. <Style x:Key="PasswordBoxStyle1…
WPF ListBox ItemContainerStyle 设置BackGround 和 BorderBrush 无效
今天更改ListBox,用到ItemContainerStyle设置样式,设置Style.Triggers时,BackGround和BorderBrush均无效,其他效果正常. 翻看WPF编程宝典,发现代码没问题,下载源码之后,发现效果一样不行.在群里求助之后,得到解决.win8问题,编程宝典的作者用的是win7,xp也正常,唯独win8没有效果. 原问题链接:http://stackoverflow.com/questions/491293/why-cant-i-set-the-backgro…
TreeView的性能问题
最近在帮同事调试一个类似资源管理器的wpf界面,左边TreeView去遍历大目录时UI卡死,刚开始我以为是在UI线程中调用系统API遍历目录的原因,就改为后台遍历,但是没有效果. 根本原因: TreeView的Style中Template对于ScrollViewer的CanContentScroll设置为FALSE, 导致VirtualizingStackPanel的虚拟化失效 解决办法: 设置ScrollViewer的CanContentScroll为True, 如: <Setter Prop…
DataGrid 样式
<SolidColorBrush x:Key="OutsideFontColor" Color="#FF000000" /> <LinearGradientBrush x:Key="NormalBrush" EndPoint="0.5,1" StartPoint="0.5,0"> <GradientStop Color="#FFFFFFFF" Offset=…
WPF学习之深入浅出话模板
图形用户界面应用程序较之控制台界面应用程序最大的好处就是界面友好.数据显示直观.CUI程序中数据只能以文本的形式线性显示,GUI程序则允许数据以文本.列表.图形等多种形式立体显示. 用户体验在GUI程序设计中起着举足轻重的作用-----用户界面设计成什么样看上去才足够的漂亮?控件如何安排才简单易用并且少犯错误?这些都是设计师需要考虑的问题.WPF系统不但支持传统的Winfrom编程的用户界面和用户体验设计,更支持使用专门的设计工具Blend进行专业设计,同时还推出了以模板为核心的新一代设计理念.…
DataGrid当列宽超出当前宽度时,没有数据也恒有滚动条
附件是DataGrid支持滚动条的文件. 具体使用如下: 1)DataGrid使用控件模板 <Setter Property="Template" Value="{DynamicResource grdStudyListDataGridControlTemplate}"> <ControlTemplate x:Key="grdStudyListDataGridControlTemplate" TargetType="{…