从WPF自定义MarkupExtension访问“当前类”
我试图通过给我一个更好的方法在XAML中指定绑定来编写自定义MarkupExtension
以使我的生活更轻松。 但是,我想知道是否有任何方法可以访问表示使用MarkupExtension
的文件的对象。
换句话说,假设我有一个UserControl
定义了我的程序的数据模型的特定再现。 这个控件有很多视觉材料,如网格,边框和总体布局。 如果我在这个UserControl
的某个元素的特定属性上使用我的MarkupExtension
,我想访问UserControl
的实例,而不知道它是什么类型(我计划使用reflection)。
这是可能吗?
在.NET 4.0中,他们添加了IRootObjectProviderfunction,但不幸的是,它在以前的版本中是不可能的。 如果您使用的是.NET 4.0,则可以执行以下操作:
public override object ProvideValue(IServiceProvider serviceProvider) { var rootObjectProvider = serviceProvider.GetService(typeof(IRootObjectProvider)) as IRootObjectProvider; var root = rootObjectProvider.RootObject; // do whatever you need to do here }
- 如何在WinForms项目中将XML用作DataGridView的DataSource?
- IQueryable Extension:创建lambda表达式以查询关键字的列
- 向后复制一个数组? Array.Copy?
- 无法更新EntitySet的’ItemRankList’,因为它具有DefiningQuery并且不存在元素
- 是否有任何集合类或特殊数据类型支持.NET 3.5中超过2 ^ 31项?
- 创建了XMLTextReader,但XslCompiledTransform.Transform失败并带有无效字符
- 什么是“同步块”以及减少计数的提示
- 使用“mm”说明符格式化月份的DateTime ToString问题
- 如何忽略默认的EntityData属性?