120 lines
6.9 KiB
XML
120 lines
6.9 KiB
XML
<UserControl x:Class="YouTubeViewers.WPF.Components.YouTubeViewersListingItem"
|
|
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:YouTubeViewers.WPF.Components"
|
|
xmlns:custom="clr-namespace:DropdownMenuControl;assembly=DropdownMenuControl"
|
|
xmlns:loadingspinner="clr-namespace:LoadingSpinnerControl;assembly=LoadingSpinnerControl"
|
|
mc:Ignorable="d"
|
|
d:DesignHeight="450" d:DesignWidth="800">
|
|
<UserControl.Resources>
|
|
<BooleanToVisibilityConverter x:Key="BooleanToVisibilityConverter"/>
|
|
</UserControl.Resources>
|
|
<Border Padding="10" TextBlock.FontSize="16">
|
|
<Grid>
|
|
<Grid.ColumnDefinitions>
|
|
<ColumnDefinition Width="*"/>
|
|
<ColumnDefinition Width="auto"/>
|
|
</Grid.ColumnDefinitions>
|
|
<StackPanel Grid.Column="0">
|
|
<TextBlock Text="{Binding UserName}"/>
|
|
<TextBlock
|
|
FontSize="10"
|
|
Style="{StaticResource ErrorMessage}"
|
|
Text="{Binding ErrorMessage}"
|
|
Visibility="{Binding HasErrorMessage, Converter={StaticResource BooleanToVisibilityConverter}}"/>
|
|
</StackPanel>
|
|
|
|
<Grid Grid.Column="1" Margin="10 0 0 0">
|
|
<Grid VerticalAlignment="Center">
|
|
<Grid.Style>
|
|
<Style TargetType="Grid">
|
|
<Setter Property="Visibility" Value="Collapsed"/>
|
|
<Style.Triggers>
|
|
<DataTrigger Binding="{Binding IsDeleting}" Value="true">
|
|
<Setter Property="Visibility" Value="Visible"/>
|
|
</DataTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</Grid.Style>
|
|
<loadingspinner:LoadingSpinner Diameter="20" IsLoading="True" Thickness="2"/>
|
|
</Grid>
|
|
<Grid>
|
|
<Grid.Style>
|
|
<Style TargetType="Grid">
|
|
<Setter Property="Visibility" Value="Collapsed"/>
|
|
<Style.Triggers>
|
|
<DataTrigger Binding="{Binding IsDeleting}" Value="false">
|
|
<Setter Property="Visibility" Value="Visible"/>
|
|
</DataTrigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</Grid.Style>
|
|
|
|
<custom:DropdownMenu x:Name="dropdown" >
|
|
<Border
|
|
Background="White"
|
|
BorderThickness="1"
|
|
BorderBrush="Gray">
|
|
<StackPanel MinWidth="125">
|
|
<StackPanel.Resources>
|
|
<Style TargetType="Button">
|
|
<Setter Property="Background" Value="#f0f0f0"/>
|
|
<Setter Property="Foreground" Value="Black"/>
|
|
<Setter Property="HorizontalAlignment" Value="Stretch"/>
|
|
<Setter Property="Padding" Value="20 10"/>
|
|
<Setter Property="Cursor" Value="Hand"/>
|
|
<EventSetter Event="Click" Handler="Button_Click"/>
|
|
|
|
<Setter Property="Template">
|
|
<Setter.Value>
|
|
<ControlTemplate TargetType="Button">
|
|
<Border
|
|
Margin="{TemplateBinding Margin}"
|
|
Padding="{TemplateBinding Padding}"
|
|
Background="{TemplateBinding Background}">
|
|
<ContentPresenter />
|
|
</Border>
|
|
</ControlTemplate>
|
|
</Setter.Value>
|
|
</Setter>
|
|
|
|
<Style.Triggers>
|
|
<Trigger Property="IsMouseOver" Value="True">
|
|
<Trigger.EnterActions>
|
|
<BeginStoryboard>
|
|
<Storyboard>
|
|
<ColorAnimation
|
|
Storyboard.TargetProperty="Background.(SolidColorBrush.Color)"
|
|
To="#c7c7c7"
|
|
Duration="0:0:0.1" />
|
|
</Storyboard>
|
|
</BeginStoryboard>
|
|
</Trigger.EnterActions>
|
|
<Trigger.ExitActions>
|
|
<BeginStoryboard>
|
|
<Storyboard>
|
|
<ColorAnimation
|
|
Storyboard.TargetProperty="Background.(SolidColorBrush.Color)"
|
|
To="#f0f0f0"
|
|
Duration="0:0:0.1" />
|
|
</Storyboard>
|
|
</BeginStoryboard>
|
|
</Trigger.ExitActions>
|
|
</Trigger>
|
|
</Style.Triggers>
|
|
</Style>
|
|
</StackPanel.Resources>
|
|
<Button Content="Edit" Command="{Binding EditCommand}"/>
|
|
<Button Content="Delete" Command="{Binding DeleteCommand}"/>
|
|
</StackPanel>
|
|
</Border>
|
|
</custom:DropdownMenu>
|
|
</Grid>
|
|
</Grid>
|
|
|
|
</Grid>
|
|
</Border>
|
|
</UserControl>
|