LANCommander/LANCommander.Playnite.Extension/Controls/ProfileTopPanelItem.xaml

48 lines
3 KiB
XML

<UserControl x:Class="LANCommander.PlaynitePlugin.Controls.ProfileTopPanelItem"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:LANCommander.PlaynitePlugin.Controls"
mc:Ignorable="d"
d:DesignHeight="450" d:DesignWidth="800" Name="ProfileTopPanelItemControl">
<UserControl.Resources>
<ContextMenu x:Key="ProfileMenu">
<MenuItem Header="{DynamicResource LOCLANCommanderProfileMenuChangeName}" Click="ChangeName" />
<MenuItem Header="{DynamicResource LOCLANCommanderProfileMenuViewProfile}" Click="ViewProfile" />
<MenuItem Header="{DynamicResource LOCLANCommanderProfileMenuLogOut}" Click="LogOut" />
</ContextMenu>
</UserControl.Resources>
<Button Click="OpenProfileMenu" Padding="0" BorderThickness="0" Height="32">
<Button.Style>
<Style TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.PlayerAvatarUrl}" Value="{x:Null}">
<Setter Property="Padding" Value="10,5,10,5" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.PlayerAvatarUrl}" Value="">
<Setter Property="Padding" Value="10,5,10,5" />
</DataTrigger>
</Style.Triggers>
</Style>
</Button.Style>
<StackPanel Orientation="Horizontal">
<Image Source="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.PlayerAvatarUrl}" Height="32" VerticalAlignment="Center">
<Image.Style>
<Style TargetType="Image">
<Style.Triggers>
<DataTrigger Binding="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.PlayerAvatarUrl}" Value="{x:Null}">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
<DataTrigger Binding="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.PlayerAvatarUrl}" Value="">
<Setter Property="Visibility" Value="Collapsed" />
</DataTrigger>
</Style.Triggers>
</Style>
</Image.Style>
</Image>
<TextBlock Text="{Binding ElementName=ProfileTopPanelItemControl, Path=DataContext.DisplayName}" FontSize="16" Padding="10,0,10,0" VerticalAlignment="Center" />
</StackPanel>
</Button>
</UserControl>