ウィンドウにテキストボックスがあり、canExecute関数を使用してフィールドが空かどうかを確認しています。テキストボックス内で使用されるDependencyPropertyにto-wayバインディングがあります。とにかく、CanExecuteでは常にnullです(編集:nullではなく、空です: "")。どこが間違っているのか教えていただけますか?
<TextBox Text="{Binding Path=StatusName, ElementName=Window, Mode=TwoWay}" x:Name="StatusNameTextBox" />
public String StatusName
{
get { return (String)GetValue(StatusNameProperty); }
set { SetValue(StatusNameProperty, value); }
}
public static readonly DependencyProperty StatusNameProperty =
DependencyProperty.Register("StatusName", typeof(String), typeof(AddStatusWindow), new UIPropertyMetadata(""));
private void AddNewStatusCommand_CanExecute(object sender, CanExecuteRoutedEventArgs e)
{
e.CanExecute = !String.IsNullOrEmpty(StatusName);
}
PS:VSデボガーにバインディングエラーはありません