WPF プロジェクトの XAML でブール コンバーターを使用しています。「IsBusy」が true の間、いくつかのボタンを無効にしたい。IsBusy が正しく true/false に設定されていることは間違いありません。コンバーターなしで IsBusy に直接バインドできました。以下は現在動作しません。実際のコンバーター クラスにブレークポイントを設定しましたが、「Convert」メソッドと「ConvertBack」メソッドがヒットすることはありません。ここで何が問題なのですか?
IsEnabled="{Binding IsBusy, Converter={StaticResource InvertedBooleanConverter}}"
資力:
<Window.Resources>
<converters:InvertedBooleanConverter x:Key="InvertedBooleanConverter" />
</Window.Resources>
コンバーター:
xmlns:converters="clr-namespace:MyProject.Converters"
コンバーター:
namespace MyProject.Converters
{
[ValueConversion(typeof(bool), typeof(bool))]
public class InvertedBooleanConverter : IValueConverter
{
#region IValueConverter Members
public object Convert(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
if (targetType != typeof(bool))
throw new InvalidOperationException("The target must be a boolean");
return !(bool)value;
}
public object ConvertBack(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
throw new NotSupportedException();
}
#endregion
}
}