ボタンコマンドにバインドする場合、私のカスタムタイプをICommandに変換するTypeConverterを作成しようとしています。DependencyPropertyがインターフェイスの場合、WPFがTypeConverterを呼び出さない
残念ながら、WPFは私のコンバータを呼び出していません。
コンバータ:
public class CustomConverter : TypeConverter
{
public override bool CanConvertTo(ITypeDescriptorContext context, Type destinationType)
{
if (destinationType == typeof(ICommand))
{
return true;
}
return base.CanConvertTo(context, destinationType);
}
public override object ConvertTo(
ITypeDescriptorContext context, CultureInfo culture, object value, Type destinationType)
{
if (destinationType == typeof(ICommand))
{
return new DelegateCommand<object>(x => { });
}
return base.ConvertTo(context, culture, value, destinationType);
}
}
XAML:
<Button Content="Execute" Command="{Binding CustomObject}" />
私のような内容に結合する場合にはコンバーターが呼び出されます
:
<Button Content="{Binding CustomObject}" />
私は仕事ににTypeConverterを取得することができますどのように任意のアイデアは、 ?
非常に興味深いです。私はインターフェイスであるタイプが問題であることを確認しました。テストコード:http://pastebin.com/EsMguMx5 - コンバーターは呼び出されませんが、依存関係プロパティー定義で 'IDestinationThing'を' DestinationThing'に変更するだけで作業が開始されます。 – nmclean