大多数转换器不带参数,或者只带一个固定参数,并且很容易绑定到:
<local:MyConverter x:Key="MyConverterInstance" />
<TextBox Text="{Binding Path=MyTime,
Converter={StaticResource MyConverterInstance},
ConverterParameter='yyyy/MM/dd'}" />
但是,如果我希望该格式成为用户可以更改的动态属性,我不能做这样的事情,对吧?:
<TextBox Text="{Binding Path=MyTime,
Converter={StaticResource MyConverterInstance},
ConverterParameter={Binding Path=UserFormat}}" />
所以我唯一的选择是在 MyConverter 上定义一个 DependencyProperty 进行绑定。但我的转换器定义是一个静态资源。我不能去
<local:MyConverter x:Key="MyConverterInstance"
Format="{Binding Path=UserFormat}"/>
因为StaticResources 上没有DataContext。我该如何设置?