WPF MarkupExtension
2021-03-07 01:27
标签:cli pre 属性 tar get cal extension parse property
创建自己的特殊标签。 继承Markupextension。 具体用法很简单: 本例是非常垃圾的。 准确的说是根本排不上用场。 这里面最主要的就是ProvideValue这个方法的里面参数 通过这个参数我们可以获取是什么控件,是什么属性在使用这个标签。 WPF MarkupExtension 标签:cli pre 属性 tar get cal extension parse property 原文地址:https://www.cnblogs.com/lonelyxmas/p/12833887.html public class IsBiggerNumberExtension : MarkupExtension
{
public IsBiggerNumberExtension(object num)
{
Number = num;
}
public object Number
{
get;
set;
}
public IsBiggerNumberExtension()
{
}
public override object ProvideValue(IServiceProvider serviceProvider)
{
var target = serviceProvider.GetService(typeof(IProvideValueTarget)) as IProvideValueTarget;
var dp = target.TargetProperty as DependencyProperty;
var dpo = target.TargetObject as DependencyObject;
double d = 0,d2=0;
var n = double.TryParse(dpo.GetValue(dp).ToString(),out d);
var n1= double.TryParse(Number.ToString(), out d2);
var result = d>d2;
var h = dp.IsValidType(result);
return h?result:(object)result.ToString();
}
}
TextBlock Grid.Row="1" Text="{local:IsBiggerNumber 1}" >
文章标题:WPF MarkupExtension
文章链接:http://soscw.com/index.php/essay/61115.html