<UserControl
    x:Class="JumpPoint.Uwp.Controls.MusicPropertiesControl"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:JumpPoint.Uwp.Controls"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
             xmlns:sys="using:System"
             xmlns:helper="using:JumpPoint.ViewModels.Helpers"
             mc:Ignorable="d"
    d:DesignHeight="1200"
    d:DesignWidth="400">

    <UserControl.Resources>
        <Style TargetType="TextBlock">
            <Setter Property="TextWrapping"
                    Value="WrapWholeWords" />
        </Style>
    </UserControl.Resources>

    <Grid ColumnSpacing="8"
          RowSpacing="4">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="*" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
        </Grid.RowDefinitions>
        <TextBlock Text="Album Artist:" />
        <TextBlock Text="{x:Bind Music.AlbumArtist, Mode=OneWay}"
                   Grid.Column="1" />

        <TextBlock Text="Album:"
                   Grid.Row="1" />
        <TextBlock Text="{x:Bind Music.Album, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="1" />

        <TextBlock Text="Artists:"
                   Grid.Row="2" />
        <TextBlock Text="{x:Bind sys:String.Join('; ', Music.Artists), Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="2" />

        <TextBlock Text="Composers:"
                   Grid.Row="3" />
        <TextBlock Text="{x:Bind sys:String.Join('; ', Music.Composers), Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="3" />

        <TextBlock Text="Conductors:"
                   Grid.Row="4" />
        <TextBlock Text="{x:Bind sys:String.Join('; ', Music.Conductors), Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="4" />

        <TextBlock Text="Disc Number:"
                   Grid.Row="5" />
        <TextBlock Text="{x:Bind Music.DiscNumber, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="5" />

        <TextBlock Text="Track Number:"
                   Grid.Row="6" />
        <TextBlock Text="{x:Bind Music.TrackNumber, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="6" />

        <TextBlock Text="Is Compilation:"
                   Grid.Row="7" />
        <TextBlock Text="{x:Bind Music.IsCompilation, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="7" />

        <TextBlock Text="Part of Set:"
                   Grid.Row="8" />
        <TextBlock Text="{x:Bind Music.PartOfSet, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="8" />

        <MenuFlyoutSeparator Grid.Row="9"
                             Grid.ColumnSpan="2" />

        <TextBlock Text="Beats Per Minute:"
                   Grid.Row="10" />
        <TextBlock Text="{x:Bind Music.BeatsPerMinute, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="10" />

        <TextBlock Text="Genre:"
                   Grid.Row="11" />
        <TextBlock Text="{x:Bind sys:String.Join('; ', Music.Genre), Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="11" />

        <TextBlock Text="Initial Key:"
                   Grid.Row="12" />
        <TextBlock Text="{x:Bind Music.InitialKey, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="12" />

        <TextBlock Text="Mood:"
                   Grid.Row="13" />
        <TextBlock Text="{x:Bind Music.Mood, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="13" />

        <TextBlock Text="Period:"
                   Grid.Row="14" />
        <TextBlock Text="{x:Bind Music.Period, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="14" />

        <MenuFlyoutSeparator Grid.Row="15"
                             Grid.ColumnSpan="2" />

        <TextBlock Text="Lyrics:"
                   Grid.Row="16" />
        <TextBlock Text="{x:Bind Music.Lyrics, Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="16" />

        <TextBlock Text="Synchronized Lyrics:"
                   Grid.Row="17" />
        <TextBlock Text="{x:Bind helper:PropertyHelper.Buffer(Music.SynchronizedLyrics), Mode=OneWay}"
                   Grid.Column="1"
                   Grid.Row="17" />

    </Grid>
</UserControl>
