Dreamine.UI.Wpf 1.0.1
Dreamine.UI.Wpf 사용자 인터페이스 기능과 구성 요소를 제공합니다.
로딩중...
검색중...
일치하는것 없음
SelfTextConverterExtension.cs
이 파일의 문서화 페이지로 가기
1using System.Globalization;
2using System.Windows;
3using System.Windows.Data;
4using System.Windows.Markup;
5
7
16[MarkupExtensionReturnType(typeof(object))]
17public class SelfTextConverterExtension : MarkupExtension
18{
27 public IValueConverter Converter { get; set; } = null!;
36 public object Parameter { get; set; } = null!;
37
70 public override object ProvideValue(IServiceProvider serviceProvider)
71 {
72 if (serviceProvider.GetService(typeof(IProvideValueTarget)) is not IProvideValueTarget pvt)
73 return null!;
74
75 var targetObject = pvt.TargetObject;
76 var targetProperty = pvt.TargetProperty as DependencyProperty;
77
78 if (targetObject == null || targetProperty == null || Converter == null)
79 return null!;
80
81 if (targetObject is DependencyObject depObj)
82 {
83 var currentValue = depObj.GetValue(targetProperty);
84 return Converter.Convert(currentValue, targetProperty.PropertyType, Parameter, CultureInfo.CurrentCulture);
85 }
86
87 return null!;
88 }
89}
override object ProvideValue(IServiceProvider serviceProvider)