gpt4 book ai didi

c# - IValueConverter.Convert 不会在 OneWay 绑定(bind)上被调用

转载 作者:行者123 更新时间:2023-11-30 16:30:34 25 4
gpt4 key购买 nike

我有一个 bool 属性(在 setter 中称为 INotifyPropertyChanged),它绑定(bind)到我的 XAML 中的 button.IsEnabled 属性。目前我正在使用 TwoWay 绑定(bind),但这会导致问题,我只需要一个 OneWay 绑定(bind)。我的问题是我正在使用的转换器在程序第一次启动后不会被调用。我在 setter 中放置了断点,它被称为加载,但 Convert() 方法根本没有被调用。这是为什么?

部分代码:

public bool IsSaving
{
get
{
return _isSaving;
}
set
{
_isSaving = value;
NotifyOfPropertyChange(() => IsSaving);
}
}

和 XAML:

IsEnabled="{Binding Path=IsSaving, Mode=OneWay, Converter={StaticResource booleanToNotEnabledConverter}}"

转换器实际上只是返回 !(bool)value 所以当 IsSaving 为真时按钮被禁用。

最佳答案

运行时的某些更改可能会导致绑定(bind)中断(因为您绑定(bind)到 DataContext + 相对路径),如果您使用 Visual Studio,请确保检查输出窗口是否存在任何绑定(bind)错误。

编辑: 由于没有注意到:这是一个标准的绑定(bind)并且发布的代码没有任何问题,问题必须由上下文引起。

关于c# - IValueConverter.Convert 不会在 OneWay 绑定(bind)上被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5565309/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com