У меня странная проблема с привязкой логического свойства к свойству видимости View.
У меня есть «основное» представление, которое содержит множество других представлений, а также различные другие элементы UIE, включая кнопки, TextBoxes, Сетки, StackPanels и некоторые элементы управления telerik.Некоторые элементы управления имеют свою видимость, связанную с логическими свойствами в моей ViewModel, так что когда свойства положительные, они отображаются, а когда отрицательные - свернуты.
<Border Visibility="{Binding IsSectionShown,
Converter={StaticResource BoolToVisibilityConverter}}" >
Это прекрасно работает для меня.Очевидно, что я вызвал событие уведомления в установщике IsSectionShown
, и видимость элемента управления соответствующим образом скорректирована.
Теперь у меня есть представление, для которого необходимо настроить его видимость.Очевидная реализация:
<vw:ActivityView DataContext="{Binding Activity}"
Visibility="{Binding IsPositive,
Converter={StaticResource BoolToVisibilityConverter}}" />
Не работает!Моя работа заключается в том, чтобы обернуть мой взгляд в StackPanel и настроить видимость StackPanel - и это прекрасно работает:
<StackPanel Visibility="{Binding IsPositive,
Converter={StaticResource BoolToVisibilityConverter}}">
<vw:ActivityView DataContext="{Binding Activity}" />
</StackPanel>
Есть идеи относительно того, почему это происходит?Обходной путь - это хорошо, но я хотел бы определить пробел в моем понимании.