- 浏览: 389550 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (309)
- xaml C# wpf (0)
- scala java inner clas (1)
- Tools UML Eclipse UML2 (1)
- Timer .NET Framework (1)
- perl (6)
- python function paramter (1)
- Python Docstring (1)
- Python how to compare types (1)
- Python (8)
- java (5)
- C# (76)
- C# WPF (0)
- p4 (0)
- WPF (46)
- .net (6)
- xaml (1)
- javascript (40)
- windows (10)
- scala (4)
- winform (1)
- c++ (48)
- tools (12)
- cmd (1)
- os (0)
- CI (0)
- shell (0)
- C (2)
- haskell (49)
- functional (1)
- tool (1)
- gnu (1)
- linux (1)
- kaskell (0)
- svn (0)
- wcf (3)
- android (1)
最新评论
As discussed in my previous post, - wpf - Dependency Property Value Precedence, and the original article on Dependency Property Value Precedence; There exists situation where the value of some DependencyProperty is determined by at runtime according to the list of precedence. e..g the background of a TextBlock in a ToolWindow is null, but because the ToolWindow has background property overriden, you ends up saying the TextBlock to have the background of the ToolWindow.
Below shows the method that return an effective value of DependencyProperty identified by the propertyName parameter.
/// <summary> /// Get the effective property from the Dependency Property and the Metadata system /// </summary> /// <typeparam name="T"></typeparam> /// <param name="propertyName"></param> /// <param name="element"></param> /// <returns></returns> public static T GetEffectiveDependencyPropertyValue<T>(string propertyName, FrameworkElement element) { if (element == null) throw new ArgumentNullException("element"); if (propertyName == null) throw new ArgumentNullException("propertyName"); var visual = (DependencyObject)element; while (visual != null) { var propertyDescriptor = DependencyPropertyDescriptor.FromName(propertyName, visual.GetType(), visual.GetType(), true); var propertyValue = propertyDescriptor.GetValue(visual); if (propertyValue != null) { return (T)propertyValue; } visual = LogicalTreeHelper.GetParent(visual); } return default(T); }
To use it, you just do
FrameworkElement visua = ... var background = GetEffectiveDependencyPropertyValue<Brush>("Background", visual);
发表评论
-
wpf - example to enhance ComboBox for AutoComplete
2014-09-19 15:56 1939first let’s see an example ... -
WPF – Virtualization – VirutalizationStackPanel and ItemsPanelTemplate
2013-08-05 21:55 1361Topic: WPF – Virtualization – ... -
wpf - BehaviorBase and one use examples
2013-06-18 18:41 1279Behavior is something that we ... -
WPF - Setting foreground color of Entire window
2013-06-13 16:00 1880You might as well as I would s ... -
WPF - Enhanced TabControl - TabControlEx aka Prerendering TabControl
2013-06-13 13:12 5292As an opening word, let's che ... -
wpf - ControlTemplate and AddLogicChild/RemoveLogicalChild
2013-06-10 15:42 1144Recently I was trying to debug ... -
wpf - default implicit style
2013-05-10 10:24 770We know that if you left out ... -
wpf - Style setter on the attached property
2013-05-08 14:54 2820I believe that you are familia ... -
wpf - specify enum values in xaml
2013-05-08 11:31 3544Many a situation you find tha ... -
wpf - IG xamDataGrid bind to XmlDataProvider with Xml Island
2012-12-18 14:28 1253Sometimes you may bind to some ... -
wpf - translate winform button/mouse event to wpf events
2012-12-12 17:37 2127It is common that we sometimes ... -
wpf - Freezable and its meaning
2012-09-27 12:38 0This article is based on the di ... -
wpf - Customize the grid lines for original wpf Grid control
2012-09-27 12:01 1428The System.WIndows.Controls.Gri ... -
c# - Convert from System.Drawing.Image to System.WIndows.Media.ImageSource
2012-09-25 14:27 7369In Previous discussion, we have ... -
wpf - Default(Theme) style and its DefaultStyleKey
2012-08-28 17:54 1360As dicsused in the subsection o ... -
wpf - Dependency Property Value Precedence
2012-08-28 18:56 835A dependency property to an Dep ... -
wpf - WPF TemplateBinding vs RelativeSource TemplatedParent
2012-08-28 14:20 3655This is a post that summarizes ... -
wpf - ICutomTypeDescriptor , PropertyDescriptor and its use in PropertyGrid
2012-08-28 14:04 3544The type ICustomTypeDe ... -
wpf - tips to convert UI controls in WPF/Silverlight/Winforms into a Bitmap
2012-08-27 17:44 935In previous discussion, we have ... -
wpf - input binding examples
2012-08-27 11:47 1178Input binding is the mechanism ...
相关推荐
gong-wpf-dragdrop, GongSolutions.WPF.DragDrop 库是WPF的拖动'n'拖放框架 简介GongSolutions.WPF.DragDrop 库是一个易于使用的拖拉'n'拖放框架。特性使用 MVVM: 拖放逻辑可以放在ViewModel中。 代码不需要放在in中...
c#-的WPF---MVVM例子,大家共同学习
一个简单的WPF程序
bootstrap-wpf-style-master 样式代码 。。。。。。。。
C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手 C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手 C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手
Prism-Samples-Wpf-master06-10的VS2017版本实现,下载手动重新安装一下nuget包即可,方便大家学习
wpf--ListBox分组-排序 wpf--ListBox分组-排序
我最近打算学习WPF ,在寻找MVVM框架的时候发现了PRISM,在此之前还从一些博客上了解了其它的MVVM框架,比如浅谈WPF中的MVVM框架--MVVMFoundation 中提到的MVVMFoundation,再比如 ViewModel从未如此清爽 - 轻量级...
wpf-wcf-wf整合开发实例--有利于理解wpf-wcf-wf的整合
WPF收集程序
WPF的基本空间历程,使用.net core3.0.1版本
WPF--Effect特效 对Effect的进行使用的小例子
wpf-datagrid-access DB,可以更新数据到Access数据库
wpf-资源的使用-resource
Wpf-图片放大缩小移动操作 Wpf-图片放大缩小移动操作
wpf charts源码,D源码,图书:practical-wpf-charts-graphics-master
WPF-MVVM WPF MVVM模式开发的例子程序
C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手 C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手 C#开发WPF-Silverlight动画及游戏系列教程-深蓝色右手
超酷WPF数据可视化,全套源程序,非常适合做数据可视化的程序员使用,WPF,XAML。 找了好久的资源,附有很多很详细的插图,是大数据时代不可缺少的可视化学习数据,仅供大家学习使用请勿用做商业用途。与大家一起...
WPF-MVVM实现CRUD操作