【发布时间】:2021-11-02 23:15:39
【问题描述】:
我想将 ComboBox CB1 中的文本绑定到 ComboBox CB2 中的验证规则 (CommunicationMode)。 我的源代码看起来像这样,但我收到错误消息:只能为“DependencyObject”的“DependencyProperty”设置“Binding”。 有没有办法解决这个问题?
public string CommunicationMode { get; set; }
public override ValidationResult Validate(object value, CultureInfo cultureInfo)
{
return new ValidationResult(true, null);
}
<ComboBox Name="CB1">
<ComboBox.Text>
<Binding Path="CB1" UpdateSourceTrigger="PropertyChanged"/>
</ComboBox.Text>
</ComboBox>
<ComboBox Name="CB2">
<ComboBox.Text>
<Binding Path="CB2" UpdateSourceTrigger="PropertyChanged">
<Binding.ValidationRules>
<valid:ComboboxValidationRule CommunicationMode="{Binding ElementName=CB1, Path=Name}" ValidatesOnTargetUpdated="True"/>
</Binding.ValidationRules>
</Binding>
</ComboBox.Text>
</ComboBox>
【问题讨论】:
-
在
{Binding ElementName=CB1, Path=Name},绑定不应该在Text而不是Name吗?