Задача:
Требуется по нажатию одной кнопки заменить её на другую и наоборот.
Написал такие стили для двух кнопок:
<Style x:Key="FindAppButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="IsEnabled" Value="True"/>
<Setter Property="Visibility" Value="Visible"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=StopSearch, Path=Visibility}" Value="Hidden">
<Setter Property="Visibility" Value="Visible"/>
<Setter Property="IsEnabled" Value="True"/>
</DataTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Visibility" Value="Hidden"/>
<Setter Property="IsEnabled" Value="False"/>
</Trigger>
</Style.Triggers>
</Style>
<Style x:Key="StopSearchButtonStyle" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Visibility" Value="Hidden"/>
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=FindApp, Path=Visibility}" Value="Hidden">
<Setter Property="Visibility" Value="Visible"/>
<Setter Property="IsEnabled" Value="True"/>
</DataTrigger>
<Trigger Property="IsPressed" Value="True">
<Setter Property="Visibility" Value="Hidden"/>
<Setter Property="IsEnabled" Value="False"/>
</Trigger>
</Style.Triggers>
</Style>
По нажатию кнопки поиска, мельком видно, как она скрывается и появляется кнопка остановки, а потом обратно становится видимой. А события нажатия для этих кнопок вообще не срабатывают.
В чём дело?
Ваша ошибка в том, вы в разметке пытаетесь решить вопрос, который, по хорошему, надо решать в ViewModel
. Сделайте в вашей VM
два свойства StopSearchVisibility
и FindAppVisibility
типа bool
и к ним уже привяжите ваши кнопки.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Допустим, были сгенерированы Классы-сущности и мне захотелось расширить какую-то сущность дополнительными полями(Например, вспомогательными...
В моем ListView с кнопками по непонятной мне причине, не хочет работать скролл Вот Listview
ЗдравствуйтеЯ хочу с помощью Unit Test проверить, или моя функция правильно работает и не знаю как заменить блок if-else?