Я хочу использовать ValidationRules
, чтобы убедиться, что для нескольких ListBox
элементов управления выбран хотя бы один элемент.
Я пытался сделать это так:
<ListBox ItemsSource="{Binding Path=AvailableItems}"
Behaviors:MultiSelectorBehaviours.SynchronizedSelectedItems="{Binding ChosenItems}"
x:Name="ListBoxItems">
<ListBox.Tag>
<Binding ElementName="ListBoxItems" Path="SelectedItem">
<Binding.ValidationRules>
<ValidationRules:NotNullValidationRule />
</Binding.ValidationRules>
</Binding>
</ListBox.Tag>
</ListBox>
Но мой NotNullValidationRule
никогда не вызывается. Обратите внимание, что SynchronizedSelectedItems
является специальным вложенным свойством, которое я использую для синхронизации SelectedItems
с пользовательской коллекцией ( описывается здесь ). Вот почему я проверяю «фальшивку» Binding
, примененную вместо Tag
.
Есть ли способ проверить ListBox.SelectedItems
?