0

有 ItemsSource 作为 ObservableCollection 的 DataGrid。ParticipantViewModel 具有名为 ExpenseType、Currency 等的属性。对于某些特定的费用类型,参与者可以更改货币,这可以从 ParticipantViewModel 的另一个名为 IsCurrencyEnable 的属性中确定。我将 IsCurrencyEnable 与 ComboBox IsEnabled 属性绑定。

但它在 MainViewModel 而不是 ParticipantViewModel 中搜索 IsCurrencyEnable。

如何绑定 IsEnabled 属性以使其从 ParticipantViewModel 获取值?

谢谢。

4

1 回答 1

0

这很可能是数据上下文问题。您需要绑定以下内容

{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type ControlTypeThatBindsToParticipantViewModel}},Path=DataContext.IsCurrencyEnable}

ControlTypeThatBindsToParticipantViewModel 这是将其数据上下文绑定到 ParticipantViewModel 的控件类型,可以是窗口、用户控件等。

希望这可以帮助

于 2013-06-13T05:16:19.843 回答