Я просматривал старый код и наткнулся на гибридный класс IValueConverter
/ MarkupExtension
.Меня удивило, был ли метод IServiceProvider
в ProvideValue
действительно полезным и как он был бы полезен?
Я вижу, что IServiceProvider
имеет только один метод: GetService
, который должен бытьприведите к правильному типу обслуживания.Я также посмотрел на страницу MarkupExtension.ProvideValue MSDN, где перечислены различные типы служб.Я думаю, мне просто интересно, являются ли какие-либо из этих служб полезными, или я должен просто оставить свой метод таким, какой он есть?
Текущий метод:
public Object ProvideValue(IServiceProvider serviceProvider)
{
return new MyConverter();
}
По сути, я должен сделатьследующее:
public Object ProvideValue(IServiceProvider serviceProvider)
{
var provider = serviceProvider as SomeType;
if (provider == null) return new MyConverter();
//Do something with the provider here?
}