創建NullToBooleanConverter並綁定IsEnabled
財產的命令,通過轉換器運行它:
class NullToBooleanConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
return value != null;
}
public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
然後
<UserControl.Resources>
<Extentions:NullToBooleanConverter x:Key="NullToBooleanConverter" />
</UserControl.Resources>
<Button Content="Hello" IsEnabled="{Binding Save, Converter={StaticResource NullToBooleanConverter}}" />
您可以創建按鈕的樣式與禁用按鈕時{結合保存}等於x一個DataTrigger:空。 – Heinzi 2011-03-03 12:37:41
謝謝!我找到了相同的解決方案:http://stackoverflow.com/questions/4423746/wpf-mvvm-disable-a-buttons-state-when-the-viewmodel-behind-the-usercontrol-is-n/4424241#4424241。但我無法將您的答案標記爲已接受。 – Rover 2011-03-03 12:45:08
謝謝。我已經將我的評論添加爲「真正的答案」(並且冒着添加鏈接的自由),所以現在就可以接受它。 :-) – Heinzi 2011-03-03 16:55:52