XamlServiceProviderCatcher ru - Leksiqq/WpfMarkupExtension GitHub Wiki
Класс XamlServiceProviderCatcher
Применяется в ресурсах окна с целью дальнейшего доступа к соответствующему объекту типа IServiceProvider из кода, главным образом для вызова метода ProvideValue(...).
Свойства
ServiceProvider- возвращает сохранённый ранее объект типаIServiceProvider.
Пример
В словаре ресурсов MainWindow.xaml:
<Window ...
xmlns:l="clr-namespace:Net.Leksi.WpfMarkup;assembly=Net.Leksi.WpfMarkupExtension"
>
<Window.Resources>
<ResourceDictionary>
...
<l:XamlServiceProviderCatcher x:Key="SPC"/>
...
</ResourceDictionary>
</Window.Resources>
В MainWindow.xaml.cs:
...
ParameterizedResourceExtension pre = new("ValueCellTemplate");
pre.Replaces = new string[] { $"$path:{path}" };
DataTemplate? template = pre.ProvideValue((FindResource("SPC") as XamlServiceProviderCatcher)!.ServiceProvider!) as DataTemplate;
...
Раньше: (ParameterizedResource) Начало:(Обзор) Дальше:(BindingProxy)