Предположим, у вас есть класс, наследующий от ValidationRule:
public class MyValidationRule : ValidationRule
{
public string ValidationType { get; set; }
public override ValidationResult Validate(object value, CultureInfo cultureInfo) {}
}
В XAML вы проверяете так:
<ComboBox.SelectedItem>
<Binding Path="MyPath" Mode="TwoWay" UpdateSourceTrigger="PropertyChanged" NotifyOnValidationError="True">
<Binding.ValidationRules>
<qmvalidation:MyValidationRule ValidationType="notnull"/>
</Binding.ValidationRules>
</Binding>
</ComboBox.SelectedItem>
Что работает и все ок.
Но предположим теперь, что вы хотите иметь ValidationType="{Binding MyBinding}"
, где MyBinding
происходит от DataContext
.
Для этого мне нужно было бы сделать MyValidationRule
как DependencyObject
и добавить свойство зависимости.
Я попытался написать класс DependencyObject
и связать его. Однако есть 2 проблемы ... ValidationRule
НЕ имеет DataContext
из Combobox / Item.
У вас есть идеи, как это решить?