fixed up media controller

This commit is contained in:
TheXamlGuy
2024-02-03 19:58:54 +00:00
parent 221c46218f
commit 23c398ea43
35 changed files with 217 additions and 195 deletions
@@ -4,7 +4,8 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:interactions="using:Microsoft.Xaml.Interactions.Core"
xmlns:interactivity="using:Microsoft.Xaml.Interactivity">
xmlns:interactivity="using:Microsoft.Xaml.Interactivity"
xmlns:triggers="using:CommunityToolkit.WinUI.UI.Triggers">
<UserControl.Resources>
<SolidColorBrush x:Key="ButtonBackground" Color="Transparent" />
<SolidColorBrush x:Key="ButtonBorderBrush" Color="Transparent" />
@@ -16,18 +17,49 @@
<x:Double x:Key="ButtonHeight">40</x:Double>
</UserControl.Resources>
<Button
x:Name="Button"
Width="{StaticResource ButtonWidth}"
Height="{StaticResource ButtonHeight}"
Padding="{StaticResource ButtonPadding}"
Command="{Binding Click}"
Content="{Binding Icon}"
Command="{x:Bind ViewModel.InvokeCommand}"
Content="{x:Bind ViewModel.State}"
FontFamily="{StaticResource SymbolThemeFontFamily}"
FontSize="16"
ToolTipService.ToolTip="{Binding Text}">
IsEnabled="False">
<interactivity:Interaction.Behaviors>
<interactions:EventTriggerBehavior EventName="Loaded">
<interactions:InvokeCommandAction Command="{Binding Initialize}" />
<interactions:InvokeCommandAction Command="{x:Bind ViewModel.InitializeCommand}" />
</interactions:EventTriggerBehavior>
</interactivity:Interaction.Behaviors>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup>
<VisualState x:Name="MediaPreviousButtonState">
<VisualState.StateTriggers>
<triggers:IsEqualStateTrigger Value="{Binding State}" To="MediaPreviousButton" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Button.Content" Value="&#xE892;" />
</VisualState.Setters>
</VisualState>
<VisualState x:Name="MediaNextButtonState">
<VisualState.StateTriggers>
<triggers:IsEqualStateTrigger Value="{Binding State}" To="MediaNextButton" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Button.Content" Value="&#xE893;" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
<VisualStateGroup>
<VisualState x:Name="IsEnabledState">
<VisualState.StateTriggers>
<triggers:IsEqualStateTrigger Value="{Binding IsEnabled}" To="True" />
</VisualState.StateTriggers>
<VisualState.Setters>
<Setter Target="Button.IsEnabled" Value="True" />
</VisualState.Setters>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</Button>
</UserControl>