View Issue Details

IDProjectCategoryView StatusLast Update
0001407NoesisGUIUnitypublic2019-02-24 01:38
Reporternokola Assigned Tojsantos  
PrioritynormalSeveritycrash 
Status closedResolutionfixed 
Product Version2.2.0b6 
Target Version2.2.0Fixed in Version2.2.0b7 
Summary0001407: Noesis crashes (out of memory) loading NewPaintingDialog.xaml (used to work)
Description

What the title says.

Steps To Reproduce

Load the attached XAML (app.xaml resources are in FanStyle.xaml)
Expected: all OK
Actual: Noesis uses 10GB RAM and dies

Attached Files
NewPaintingDialog.xaml (6,203 bytes)   
<UserControl
	xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
	xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
	xmlns:local="clr-namespace:FantasiaPhone"
	mc:Ignorable="d"
	x:Class="FantasiaPhone.NewPaintingDialog"
	>
    <Grid>
        <Rectangle x:Name="rectBack" />
        <Image x:Name="imgConeBack" Visibility="Collapsed"/>
        <StackPanel x:Name="mainPane" Background="{StaticResource PhoneSemitransparentBrush}" HorizontalAlignment="Center" VerticalAlignment="Center" Width="320">
            <TextBlock Text="create new painting" FontSize="{StaticResource PhoneFontSizeLarge}" Margin="17,6,12,0" Height="43" />
            <TextBlock Margin="17,0" TextWrapping="Wrap" Height="27" FontSize="{StaticResource PhoneFontSizeSmall}" ><Run Text="Background"/><LineBreak/><Run/></TextBlock>
            <StackPanel Orientation="Horizontal" Height="80" HorizontalAlignment="Center">
                <RadioButton x:Name="btnFillBlack" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}" IsChecked="True"
                             GroupName="color" Height="60" Width="60" VerticalContentAlignment="Center">
                    <StackPanel >
                        <Rectangle Width="22" Height="22" Fill="Black" />
                        <TextBlock Text="black" Margin="0,6,0,0" />
                    </StackPanel>
                </RadioButton>
                <RadioButton x:Name="btnFillWhite" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color" Height="60" Width="60" VerticalContentAlignment="Center">
                    <StackPanel>
                        <Rectangle Width="22" Height="22" Fill="White" />
                        <TextBlock Text="white" Margin="0,6,0,0"/>
                    </StackPanel>
                </RadioButton>
                <RadioButton x:Name="btnFillPastelRainbow" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color" Height="60" Width="60" VerticalContentAlignment="Center">
                    <StackPanel>
                        <Image Source="/FantasiaPhone;component/Assets/Images/pastelrainbow.png" Width="22" Height="22" Stretch="None"/>
                        <TextBlock Text="pastel" TextAlignment="Center" Margin="0,6,0,0"/>
                    </StackPanel>
                </RadioButton>
                <RadioButton x:Name="btnFillRainbow" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color" Height="60" Width="60" VerticalContentAlignment="Center">
                    <StackPanel>
                        <Image Source="/FantasiaPhone;component/Assets/Images/rainbow.png" Width="22" Height="22" Stretch="None"/>
                        <TextBlock Text="rainbow" TextAlignment="Center" Margin="0,6,0,0"/>
                    </StackPanel>
                </RadioButton>
            </StackPanel>
            <Rectangle Height="120" />
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" >
				<RadioButton x:Name="btnColor1" Height="60" Width="60" VerticalContentAlignment="Center" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color">
                    <StackPanel>
                        <Rectangle Width="22" Height="22" x:Name="rectColor1"/>
                        <TextBlock Text="color 1" Margin="0,6,0,0" />
                    </StackPanel>
                </RadioButton>
				<RadioButton x:Name="btnHoriz" Height="60" Width="60" VerticalContentAlignment="Center" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color">
                    <StackPanel>
                        <Rectangle Width="22" Height="22" x:Name="rectHoriz" />
                        <TextBlock Text="horiz" Margin="0,6,0,0" />
                    </StackPanel>
                </RadioButton>
				<RadioButton x:Name="btnVert" Height="60" Width="60" VerticalContentAlignment="Center" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color">
                    <StackPanel>
                        <Rectangle Width="22" Height="22" x:Name="rectVert"/>
                        <TextBlock Text="vert" Margin="0,6,0,0" />
                    </StackPanel>
                </RadioButton>
                <!--<RadioButton x:Name="btnCone" Click="btnCone_Click" Height="120" Width="114" BorderThickness="0" FontSize="{StaticResource PhoneFontSizeSmall}" Style="{StaticResource radioSelection}"
                             GroupName="color">
                    <StackPanel>
                        <Image Width="22" Height="22" x:Name="imgCone" />
                        <TextBlock Text="cone" Margin="0,6,0,0" />
                    </StackPanel>
                </RadioButton>-->
            </StackPanel>
            <StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="0,6,0,6">
                <Button Content="ok" x:Name="btnOk" Height="53" Width="133" BorderThickness="1"/>
				<Button Content="cancel" x:Name="btnCancelNewPainting" Height="53" Width="133" BorderThickness="1"/>
            </StackPanel>
        </StackPanel>
        <!--<local:SmallColorPicker Caption="color 1" Margin="0,-45,0,0" Height="53" Width="320" x:Name="gradient1" VerticalAlignment="Center" d:LayoutOverrides="Height"/>-->
        <!--<local:SmallColorPicker Caption="color 2" Margin="0,75,0,0" Height="53" Width="320" x:Name="gradient2" VerticalAlignment="Center" d:LayoutOverrides="Height"/>-->
   </Grid>
</UserControl>
NewPaintingDialog.xaml (6,203 bytes)   
FanStyle.xaml (144,172 bytes)   
<ResourceDictionary
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
	xmlns:sys="clr-namespace:System;assembly=mscorlib">
	
    <!-- ============== MS DARK RED THEME STYLES ============== -->

    <Color x:Key="PhoneAccentColor">#FFE51400</Color> <!-- 100% accent -->
    <Color x:Key="PhoneSubtleAccentColor">#B3E51400</Color> <!-- 70% accent -->
    
    <!-- Common colors -->
    <!-- 100 percent White -->
    <Color x:Key="PhoneForegroundColor">#FFFFFFFF</Color>
    <!-- 100 percent Black -->
    <Color x:Key="PhoneBackgroundColor">#FF000000</Color>
    <!-- 100 percent Black -->
    <Color x:Key="PhoneContrastForegroundColor">#FF000000</Color>
    <!-- 100 percent White -->
    <Color x:Key="PhoneContrastBackgroundColor">#FFFFFFFF</Color>
    <!-- 40 percent White -->
    <Color x:Key="PhoneDisabledColor">#66FFFFFF</Color>
    <!-- 10 percent White -->
    <Color x:Key="PhoneProgressBarBackgroundColor">#19FFFFFF</Color>
    <!-- TextBox colors -->
    <!-- 100 percent Black -->
    <Color x:Key="PhoneTextCaretColor">#FF000000</Color>
    <!-- 75 percent White -->
    <Color x:Key="PhoneTextBoxColor">#BFFFFFFF</Color>
    <!-- 100 percent Black -->
    <Color x:Key="PhoneTextBoxForegroundColor">#FF000000</Color>
    <!-- 100 percent White -->
    <Color x:Key="PhoneTextBoxEditBackgroundColor">#FFFFFFFF</Color>
    <!-- 47 percent percent Black -->
    <Color x:Key="PhoneTextBoxReadOnlyColor">#77000000</Color>
    <!-- 60 percent White -->
    <Color x:Key="PhoneSubtleColor">#99FFFFFF</Color>
    <Color x:Key="PhoneSubtle7Color">#6bFFFFFF</Color>
    <!-- 100 percent White -->
    <Color x:Key="PhoneTextBoxSelectionForegroundColor">#FFFFFFFF</Color>
    <!-- ButtonBase colors -->
    <Color x:Key="PhoneButtonBasePressedForegroundColor">#FFFFFFFF</Color>
    <!--Windows Phone 8 Text Colors-->
    <!-- 100 percent White -->
    <Color x:Key="PhoneTextHighContrastColor">#FFFFFFFF</Color>
    <!-- 60 percent White -->
    <Color x:Key="PhoneTextMidContrastColor">#99FFFFFF</Color>
    <!-- 45 percent White -->
    <Color x:Key="PhoneTextLowContrastColor">#73FFFFFF</Color>
    <!-- Special colors -->
    <!-- 66 percent transparent -->
    <Color x:Key="PhoneSemitransparentColor">#AA000000</Color>
    <!-- 50% darker than 66 percent transparent-->
    <Color x:Key="PhoneSemitransparentColor2">#D7000000</Color>
    <!-- System chrome color -->
    <Color x:Key="PhoneChromeColor">#FF1F1F1F</Color>
    <!-- Deprecated colors -->
    <!-- 20 percent White -->
    <Color x:Key="PhoneInactiveColor">#33FFFFFF</Color>
    <!-- Inverse inactive background color -->
    <Color x:Key="PhoneInverseInactiveColor">#FFCCCCCC</Color>
    <!-- Inverse background color -->
    <Color x:Key="PhoneInverseBackgroundColor">#FFFFFFFF</Color>
    <!-- 75 percent White -->
    <Color x:Key="PhoneBorderColor">#BFFFFFFF</Color>
    <!-- Visibility -->
    <!--TODO Visibility x:Key="PhoneDarkThemeVisibility">Visible</Visibility-->
    <!--TODO Visibility x:Key="PhoneLightThemeVisibility">Collapsed</Visibility-->
    <!-- Opacity -->
    <sys:Double x:Key="PhoneDarkThemeOpacity">1</sys:Double>
    <sys:Double x:Key="PhoneLightThemeOpacity">0</sys:Double>
    <sys:Double x:Key="PhonePivotUnselectedItemOpacity">0.4</sys:Double>
    <!-- Resolution-specific resources -->
    <!--54pt-->
    <sys:Double x:Key="PivotHeaderFontSize">72</sys:Double>
    <Thickness x:Key="PivotItemMargin">12,28,12,0</Thickness>
    <SolidColorBrush x:Key="PhoneForegroundBrush" Color="{StaticResource PhoneForegroundColor}" />
    <SolidColorBrush x:Key="PhoneBackgroundBrush" Color="{StaticResource PhoneBackgroundColor}" />
    <SolidColorBrush x:Key="PhoneContrastForegroundBrush" Color="{StaticResource PhoneContrastForegroundColor}" />
    <SolidColorBrush x:Key="PhoneContrastBackgroundBrush" Color="{StaticResource PhoneContrastBackgroundColor}" />
    <SolidColorBrush x:Key="PhoneTextCaretBrush" Color="{StaticResource PhoneTextCaretColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxBrush" Color="{StaticResource PhoneTextBoxColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxForegroundBrush" Color="{StaticResource PhoneTextBoxForegroundColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxEditBackgroundBrush" Color="{StaticResource PhoneTextBoxEditBackgroundColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxEditBorderBrush" Color="{StaticResource PhoneAccentColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxReadOnlyBrush" Color="{StaticResource PhoneTextBoxReadOnlyColor}" />
    <SolidColorBrush x:Key="PhoneTextBoxSelectionForegroundBrush" Color="{StaticResource PhoneTextBoxSelectionForegroundColor}" />
    <SolidColorBrush x:Key="PhoneSubtleBrush" Color="{StaticResource PhoneSubtleColor}" />
    <SolidColorBrush x:Key="PhoneSubtle7Brush" Color="{StaticResource PhoneSubtle7Color}" />
    <SolidColorBrush x:Key="PhoneButtonBasePressedForegroundBrush" Color="{StaticResource PhoneButtonBasePressedForegroundColor}" />
    <SolidColorBrush x:Key="PhoneRadioCheckBoxBrush" Color="Transparent" />
    <SolidColorBrush x:Key="PhoneRadioCheckBoxBorderBrush" Color="{StaticResource PhoneForegroundColor}" />
    <SolidColorBrush x:Key="PhoneRadioCheckBoxCheckBrush" Color="{StaticResource PhoneForegroundColor}" />
    <SolidColorBrush x:Key="PhoneRadioCheckBoxPressedBrush" Color="{StaticResource PhoneAccentColor}" />
    <SolidColorBrush x:Key="PhoneDisabledBrush" Color="{StaticResource PhoneDisabledColor}" />
    <SolidColorBrush x:Key="TransparentBrush" Color="Transparent" />
    <SolidColorBrush x:Key="PhoneSemitransparentBrush" Color="{StaticResource PhoneSemitransparentColor}" />
    <SolidColorBrush x:Key="PhoneSemitransparentBrush2" Color="{StaticResource PhoneSemitransparentColor2}" />
    <SolidColorBrush x:Key="PhoneChromeBrush" Color="{StaticResource PhoneChromeColor}" />
    <SolidColorBrush x:Key="PhoneAccentBrush" Color="{StaticResource PhoneAccentColor}" />
    <SolidColorBrush x:Key="PhoneSubtleAccentBrush" Color="{StaticResource PhoneSubtleAccentColor}" />
    <SolidColorBrush x:Key="PhoneProgressBarBackgroundBrush" Color="{StaticResource PhoneProgressBarBackgroundColor}" />
    <!--Windows Phone 8 Text brushes-->
    <SolidColorBrush x:Key="PhoneTextHighContrastBrush" Color="{StaticResource PhoneTextHighContrastColor}" />
    <SolidColorBrush x:Key="PhoneTextMidContrastBrush" Color="{StaticResource PhoneTextMidContrastColor}" />
    <SolidColorBrush x:Key="PhoneTextLowContrastBrush" Color="{StaticResource PhoneTextLowContrastColor}" />
    <!-- Deprecated brushes -->
    <SolidColorBrush x:Key="PhoneInactiveBrush" Color="{StaticResource PhoneInactiveColor}" />
    <SolidColorBrush x:Key="PhoneInverseInactiveBrush" Color="{StaticResource PhoneInverseInactiveColor}" />
    <SolidColorBrush x:Key="PhoneInverseBackgroundBrush" Color="{StaticResource PhoneInverseBackgroundColor}" />
    <SolidColorBrush x:Key="PhoneBorderBrush" Color="{StaticResource PhoneBorderColor}" />
    <!-- Touch Target area -->
    <Thickness x:Key="PhoneTouchTargetOverhang">8</Thickness>
    <!-- Touch Target area for CheckBox / RadioButton -->
    <Thickness x:Key="PhoneTouchTargetLargeOverhang">8,14</Thickness>
    <!-- Default margins for non-touch items -->
    <Thickness x:Key="PhoneHorizontalMargin">8,0</Thickness>
    <Thickness x:Key="PhoneVerticalMargin">0,8</Thickness>
    <Thickness x:Key="PhoneMargin">8</Thickness>
    <!-- Inner margins for text controls -->
    <Thickness x:Key="PhoneTextBoxInnerMargin">1,2</Thickness>
    <Thickness x:Key="PhonePasswordBoxInnerMargin">3,2</Thickness>
    <!-- Default border size-->
    <Thickness x:Key="PhoneBorderThickness">1.5</Thickness>
    <!-- Default stroke for RadioButton -->
    <sys:Double x:Key="PhoneStrokeThickness">3</sys:Double>
    <!-- Font names --> 
    <FontFamily x:Key="PhoneFontFamilyExtraLight">Fonts/#Roboto Thin</FontFamily> <!-- Use only for experiments -->
    <FontFamily x:Key="PhoneFontFamilyLight">Fonts/#Roboto Light</FontFamily>
    <FontFamily x:Key="PhoneFontFamilySemiLight">Fonts/#Roboto Light</FontFamily>
    <FontFamily x:Key="PhoneFontFamilyNormal">Fonts/#Roboto Regular</FontFamily>
    <FontFamily x:Key="PhoneFontFamilySemiBold">Fonts/#Roboto Medium</FontFamily>
    <FontFamily x:Key="PhoneFontFamilyBold">Fonts/#Roboto Bold</FontFamily>

    <!--<FontFamily x:Key="PhoneFontFamilyLight">Fonts/#Open Sans Light</FontFamily>
    <FontFamily x:Key="PhoneFontFamilySemiLight">Fonts/#Open Sans Light</FontFamily>
    <FontFamily x:Key="PhoneFontFamilyNormal">Fonts/#Open Sans Regular</FontFamily>
    <FontFamily x:Key="PhoneFontFamilySemiBold">Fonts/#Open Sans Semibold</FontFamily>
    <FontFamily x:Key="PhoneFontFamilyBold">Fonts/#Open Sans Bold</FontFamily>-->

    <!-- Font sizes -->
    <sys:Double x:Key="PhoneFontSizeAppBar">11</sys:Double>
    <sys:Double x:Key="PhoneFontSizeSelectionBar">12</sys:Double>
    <sys:Double x:Key="PhoneFontSizeSliderLabel">12.445</sys:Double>
    
    <!--14pt-->
    <sys:Double x:Key="PhoneFontSizeSmall">13.334</sys:Double>
    <!--15pt-->
    <sys:Double x:Key="PhoneFontSizeNormal">14.29</sys:Double>
    <!--17pt-->
    <sys:Double x:Key="PhoneFontSizeMedium">16.19</sys:Double>
    <!--19pt-->
    <sys:Double x:Key="PhoneFontSizeMediumLarge">18.1</sys:Double>
    <!--24pt-->
    <sys:Double x:Key="PhoneFontSizeLarge">22.86</sys:Double>
    <!--32pt-->
    <sys:Double x:Key="PhoneFontSizeExtraLarge">30.48</sys:Double>
    <!--54pt-->
    <sys:Double x:Key="PhoneFontSizeExtraExtraLarge">51.43</sys:Double>
    <!--140pt-->
    <sys:Double x:Key="PhoneFontSizeHuge">133.334</sys:Double>
    <!-- TextBlock styles -->
    <Style x:Key="PhoneTextBlockBase" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeNormal}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}" />
        <Setter Property="Margin" Value="{StaticResource PhoneHorizontalMargin}" />
    </Style>
    <Style x:Key="PhoneTextNormalStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}" />
    <Style x:Key="PhoneTextSubtleStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="Foreground" Value="{StaticResource PhoneSubtleBrush}" />
    </Style>
    <Style x:Key="PhoneTextTitle1Style" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeExtraExtraLarge}" />
    </Style>
    <Style x:Key="PhoneTextTitle2Style" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeLarge}" />
    </Style>
    <Style x:Key="PhoneTextTitle3Style" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeMedium}" />
    </Style>
    <Style x:Key="PhoneTextExtraLargeStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeExtraLarge}" />
    </Style>
    <Style x:Key="PhoneTextGroupHeaderStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeLarge}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneSubtleBrush}" />
    </Style>
    <Style x:Key="PhoneTextLargeStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeLarge}" />
    </Style>
    <Style x:Key="PhoneTextSmallStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeSmall}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneSubtleBrush}" />
    </Style>
    <Style x:Key="PhoneTextContrastStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneContrastForegroundBrush}" />
    </Style>
    <Style x:Key="PhoneTextAccentStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneAccentBrush}" />
    </Style>
    <Style x:Key="PhoneTextHugeStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyLight}" />
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeHuge}" />
    </Style>
    <!-- Panorama -->
    <sys:Double x:Key="PanoramaItemCharacterSpacing">-35</sys:Double>
    <!--50pt-->
    <sys:Double x:Key="PanoramaItemHeaderFontSize">66</sys:Double>
    <Style x:Key="PanoramaItemHeaderTextStyle" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource PanoramaItemHeaderFontSize}" />
        <!--Setter Property="CharacterSpacing" Value="{StaticResource PanoramaItemCharacterSpacing}" /-->
    </Style>
    <!-- Pivot -->
    <!--17pt-->
    <sys:Double x:Key="PivotTitleFontSize">22.667</sys:Double>
    <Style x:Key="PivotTitleStyle" TargetType="ContentControl">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}" />
        <Setter Property="FontSize" Value="{StaticResource PivotTitleFontSize}" />
    </Style>
    <!-- LongListSelector -->
    <!-- GroupHeader -->
    <!-- 22pt -->
    <sys:Double x:Key="LongListSelectorGroupHeaderFontSize">29.333</sys:Double>
    <!-- 32pt -->
    <sys:Double x:Key="LongListSelectorGroupHeaderLetterTileFontSize">42.667</sys:Double>
    <Style x:Key="LongListSelectorGroupHeaderStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontSize" Value="{StaticResource LongListSelectorGroupHeaderFontSize}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneAccentBrush}" />
    </Style>
    <Style x:Key="LongListSelectorGroupHeaderLetterTileStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontSize" Value="{StaticResource LongListSelectorGroupHeaderLetterTileFontSize}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
    </Style>
    <!-- Jumplist -->
    <!-- JumpList Strings -->
    <!-- 20pt -->
    <sys:Double x:Key="JumpListStringFontSize">26.667</sys:Double>
    <Style x:Key="JumpListStringStyle" TargetType="TextBlock">
        <Setter Property="FontSize" Value="{StaticResource JumpListStringFontSize}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneTextHighContrastBrush}" />
    </Style>
    <!-- JumpList Alphabet Small (for international text) -->
    <!-- 28pt -->
    <sys:Double x:Key="JumpListAlphabetSmallFontSize">37.333</sys:Double>
    <Style x:Key="JumpListAlphabetSmallStyle" TargetType="TextBlock">
        <Setter Property="FontSize" Value="{StaticResource JumpListAlphabetSmallFontSize}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyBold}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneTextHighContrastBrush}" />
    </Style>
    <!-- JumpList Alphabet -->
    <!-- 36pt -->
    <sys:Double x:Key="JumpListAlphabetFontSize">48</sys:Double>
    <Style x:Key="JumpListAlphabetStyle" TargetType="TextBlock">
        <Setter Property="FontSize" Value="{StaticResource JumpListAlphabetFontSize}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}" />
        <Setter Property="Foreground" Value="{StaticResource PhoneTextHighContrastBrush}" />
    </Style>
    <!--EmptyList -->
    <!--24pt-->
    <sys:Double x:Key="EmptyListHeaderFontSize">32</sys:Double>
    <Style x:Key="EmptyListHeaderStyle" TargetType="TextBlock" BasedOn="{StaticResource PhoneTextBlockBase}">
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiLight}" />
        <Setter Property="FontSize" Value="{StaticResource EmptyListHeaderFontSize}" />

        <!-- Commente because of exception in Noesis:
			NoesisException: Loading Assets/XAMLs/Themes/FanStyle.xaml
			'#99FFFFFF' (Boxed<Color>) is not a valid value for property 'TextElement.Foreground' in Setter		
		-->
        <!--Setter Property="Foreground" Value="{StaticResource PhoneTextMidContrastColor}" /-->
    </Style>

	
    <!-- ============== WORKAROUNDS FOR MISSING STYLES ======== -->
	
    <SolidColorBrush x:Key="PhoneRadioCheckBoxCheckDisabledBrush" Color="{StaticResource PhoneDisabledColor}" />

    <Style x:Key="BrushListBoxStyle" TargetType="ListBox">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
        <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
        <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Disabled"/>
        <Setter Property="ScrollViewer.PanningMode" Value="Both"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="BorderBrush" Value="Transparent"/>
        <Setter Property="Padding" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="ListBox">
                    <ScrollViewer x:Name="ScrollViewer" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Foreground="{TemplateBinding Foreground}">
                        <ItemsPresenter Margin="{TemplateBinding Padding}"/>
                    </ScrollViewer>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    

    <!-- ============== NOESIS STYLES ========================= -->

    <!-- ============== COLORS ============== -->
    <Color x:Key="NormalFgColor">#FFC9CCCF</Color>
    <Color x:Key="NormalBgColor">#FF4D555B</Color>
    <Color x:Key="NormalDarkBgColor">#FF464E53</Color>
    <Color x:Key="NormalBdColor">#FF31373A</Color>
    <Color x:Key="NormalDarkBdColor">#FF2F3437</Color>
    <Color x:Key="CheckBgColor">#FF38A3DC</Color>
    <Color x:Key="CheckBdColor">#FF54B3E5</Color>
    <Color x:Key="TrackBgColor">#FF383D42</Color>
    <Color x:Key="TrackBdColor">#FF2E3438</Color>
    <Color x:Key="TrackLightBdColor">#FF2E3338</Color>
    <Color x:Key="TrackDarkBdColor">#FF2C3135</Color>
    <Color x:Key="OverOverlay">#19CBEBFF</Color>
    <Color x:Key="OverFgColor">#FFF1F3F4</Color>
    <Color x:Key="PressOverlay">#4C47ACEB</Color>
    <Color x:Key="FocusColor">#FF0B3C60</Color>
    <Color x:Key="FocusGlowColor">#FF114C74</Color>
    <Color x:Key="FocusTransparentGlowColor">#00114C74</Color>
    <Color x:Key="FocusShineColor">#FF1B6F9C</Color>
    <Color x:Key="FocusTransparentShineColor">#001B6F9C</Color>
    <Color x:Key="DisabledOverlay">#1468757E</Color>
    <Color x:Key="DisabledFgColor">#FF939B9F</Color>
    <Color x:Key="DisabledCheckBgColor">#FF578EAC</Color>
    <Color x:Key="DisabledCheckBdColor">#FF6B9AB3</Color>

    <!-- ============== RAMPS ============== -->
    <GradientStopCollection x:Key="NormalBgRamp">
        <GradientStop Color="#FF545D63" Offset="0"/>
        <GradientStop Color="{StaticResource NormalBgColor}" Offset="0.5"/>
        <GradientStop Color="{StaticResource NormalDarkBgColor}" Offset="1"/>
    </GradientStopCollection>
    <GradientStopCollection x:Key="NormalBdRamp">
        <GradientStop Color="#FF33393D" Offset="0"/>
        <GradientStop Color="{StaticResource NormalBdColor}" Offset="0.5"/>
        <GradientStop Color="{StaticResource NormalDarkBdColor}" Offset="1"/>
    </GradientStopCollection>
    <GradientStopCollection x:Key="TrackBdRamp">
        <GradientStop Color="{StaticResource TrackLightBdColor}" Offset="0"/>
        <GradientStop Color="{StaticResource TrackBdColor}" Offset="0.5"/>
        <GradientStop Color="{StaticResource TrackDarkBdColor}" Offset="1"/>
    </GradientStopCollection>

    <!-- ============== BRUSHES ============== -->
    <SolidColorBrush x:Key="NormalFgBrush" Color="{StaticResource NormalFgColor}"/>
    <LinearGradientBrush x:Key="NormalBgBrush" EndPoint="0.5,1" StartPoint="0.5,0" GradientStops="{StaticResource NormalBgRamp}"/>
    <SolidColorBrush x:Key="NormalDarkBgBrush" Color="{StaticResource NormalDarkBgColor}"/>
    <LinearGradientBrush x:Key="NormalBdBrush" EndPoint="0.5,1" StartPoint="0.5,0" GradientStops="{StaticResource NormalBdRamp}"/>
    <SolidColorBrush x:Key="NormalDarkBdBrush" Color="{StaticResource NormalDarkBdColor}"/>
    <SolidColorBrush x:Key="TrackBgBrush" Color="{StaticResource TrackBgColor}"/>
    <LinearGradientBrush x:Key="TrackBdBrush" EndPoint="0.5,1" StartPoint="0.5,0" GradientStops="{StaticResource TrackBdRamp}"/>
    <SolidColorBrush x:Key="TrackLightBdBrush" Color="{StaticResource TrackLightBdColor}"/>
    <SolidColorBrush x:Key="TrackDarkBdBrush" Color="{StaticResource TrackDarkBdColor}"/>
    <SolidColorBrush x:Key="WindowBrush" Color="#FF3D4348"/>
    <SolidColorBrush x:Key="ToolTipFgBrush" Color="{StaticResource OverFgColor}"/>
    <SolidColorBrush x:Key="ToolTipBgBrush" Color="#FF466E87"/>
    <SolidColorBrush x:Key="ToolTipBdBrush" Color="#FF3A5E79"/>
    <SolidColorBrush x:Key="CaretBrush" Color="{StaticResource OverFgColor}"/>
    <SolidColorBrush x:Key="SelectionBrush" Color="{StaticResource CheckBgColor}"/>

    
    <!-- ============== DEFAULT CONTROL STLYE ============== -->
    <Style x:Key="NoesisControlStyle">
		<!-- temporary workaround for Noesis control background color -->
        <!-- Setter Property="Control.Background" Value="{StaticResource NormalBgBrush}"/-->
        <!-- Setter Property="Control.BorderBrush" Value="{StaticResource NormalBdBrush}"/-->
        <Setter Property="Control.BorderThickness" Value="1"/>
        <Setter Property="Control.HorizontalContentAlignment" Value="Stretch"/>
        <Setter Property="Control.VerticalContentAlignment" Value="Stretch"/>
        <Setter Property="Control.Padding" Value="0"/>
        <Setter Property="Control.IsTabStop" Value="True"/>
        <Setter Property="Control.OverridesDefaultStyle" Value="False"/>
    </Style>

    <Style x:Key="RootContainerStyle" TargetType="{x:Type ContentControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="UseLayoutRounding" Value="True"/>
        <Setter Property="Foreground" Value="{StaticResource NormalFgBrush}"/>
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>
        <Setter Property="FontSize" Value="12"/>
        <Setter Property="FontStyle" Value="Normal"/>
        <Setter Property="FontWeight" Value="Normal"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ContentControl}">
                    <ContentPresenter
                        HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                        VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type Control}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Control}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}"/>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type ContentControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ContentControl}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}">
                        <ContentPresenter
                          HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                          VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type HeaderedContentControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type HeaderedContentControl}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}">
                        <StackPanel>
                            <ContentPresenter ContentSource="Header"/>
                            <ContentPresenter
                              HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                              VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                        </StackPanel>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type ItemsControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ItemsControl}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}">
                        <ItemsPresenter />
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type HeaderedItemsControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type HeaderedItemsControl}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}">
                        <StackPanel>
                            <ContentPresenter ContentSource="Header"/>
                            <ItemsPresenter />
                        </StackPanel>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style TargetType="{x:Type UserControl}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{x:Null}"/>
        <Setter Property="BorderBrush" Value="{x:Null}"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type UserControl}">
                    <Border
                      Background="{TemplateBinding Background}"
                      BorderBrush="{TemplateBinding BorderBrush}"
                      BorderThickness="{TemplateBinding BorderThickness}"
                      Padding="{TemplateBinding Padding}">
                        <ContentPresenter
                          HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                          VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- ============== BUTTON ============== -->
    <!-- Button Style --> 

	<Style TargetType="Button"> <!-- Fantasia default -->
		<Setter Property="Background" Value="Transparent"/>
		<Setter Property="BorderBrush" Value="{StaticResource PhoneForegroundBrush}"/>
		<Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
		<Setter Property="BorderThickness" Value="{StaticResource PhoneBorderThickness}"/>
		<Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>
		<Setter Property="FontSize" Value="{StaticResource PhoneFontSizeMedium}"/>
		<Setter Property="Padding" Value="12,6"/>
		<Setter Property="HorizontalContentAlignment" Value="Center"/>
		<Setter Property="VerticalContentAlignment" Value="Center"/>
		<Setter Property="Template">
		  <Setter.Value>
			<ControlTemplate TargetType="Button">
			  <Grid Background="Transparent">
				<VisualStateManager.VisualStateGroups>
				  <VisualStateGroup x:Name="CommonStates">
					<VisualState x:Name="Normal"/>
					<VisualState x:Name="MouseOver"/>
					<VisualState x:Name="Pressed">
					  <Storyboard>
						<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
						  <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneButtonBasePressedForegroundBrush}"/>
						</ObjectAnimationUsingKeyFrames>
						<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
						  <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneAccentBrush}"/>
						</ObjectAnimationUsingKeyFrames>
					  </Storyboard>
					</VisualState>
					<VisualState x:Name="Disabled">
					  <Storyboard>
						<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
						  <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
						</ObjectAnimationUsingKeyFrames>
						<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ButtonBackground">
						  <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
						</ObjectAnimationUsingKeyFrames>
						<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
						  <DiscreteObjectKeyFrame KeyTime="0" Value="Transparent"/>
						</ObjectAnimationUsingKeyFrames>
					  </Storyboard>
					</VisualState>
				  </VisualStateGroup>
				</VisualStateManager.VisualStateGroups>
				<Border x:Name="ButtonBackground" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="0" Margin="{StaticResource PhoneTouchTargetOverhang}">
				  <ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
				</Border>
			  </Grid>
			</ControlTemplate>
		  </Setter.Value>
		</Setter>
	</Style>

    
    <!-- ============== SCROLL BAR ============== -->

    <!-- ScrollBarLineButton Style -->
    <Style x:Key="ScrollBarLineButton" TargetType="{x:Type RepeatButton}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="ClickMode" Value="Press"/>
        <Setter Property="Delay" Value="250"/>
        <Setter Property="Interval" Value="100"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type RepeatButton}">
                    <Border x:Name="BaseBorder"
                        Background="Transparent">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
                                    <VisualTransition From="MouseOver" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0" To="Pressed"/>
                                    <VisualTransition From="Pressed" GeneratedDuration="0:0:0.2"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)" Storyboard.TargetName="CheckArrow">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.5"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)" Storyboard.TargetName="CheckArrow">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.7"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Path x:Name="CheckArrow"
                            Stretch="Fill"
                            Margin="3"
                            Data="{Binding Content, RelativeSource={RelativeSource TemplatedParent}}" UseLayoutRounding="False">
                            <Path.Fill>
                                <SolidColorBrush Color="{StaticResource CheckBgColor}" Opacity="0"/>
                            </Path.Fill>
                        </Path>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- ScrollBarPageButton Style -->
    <Style x:Key="ScrollBarPageButton" TargetType="{x:Type RepeatButton}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type RepeatButton}">
                    <Border Background="Transparent"/>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- HorizontalScrollBarThumb Style -->
    <Style x:Key="HorizontalScrollBarThumb" TargetType="{x:Type Thumb}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Thumb}">
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
                                    <VisualTransition From="MouseOver" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0" To="Pressed"/>
                                    <VisualTransition From="Pressed" GeneratedDuration="0:0:0.2"/>
                                    <VisualTransition GeneratedDuration="0:0:0.2" To="Disabled"/>
                                    <VisualTransition From="Disabled" GeneratedDuration="0:0:0.2"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.6"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.9"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="BaseBorder"
                            Background="Transparent"/>
                        <Border x:Name="DragBorder"
                            CornerRadius="1"
                            Margin="0,4">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource CheckBgColor}" Opacity="0.3"/>
                            </Border.Background>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- HorizontalScrollbar Template -->
    <ControlTemplate x:Key="HorizontalScrollBar" TargetType="{x:Type ScrollBar}">
        <Grid
            Background="Transparent"
            MinHeight="{TemplateBinding MaxHeight}"
            MaxHeight="{TemplateBinding MaxHeight}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition MinWidth="{TemplateBinding MaxHeight}" MaxWidth="{TemplateBinding MaxHeight}"/>
                <ColumnDefinition Width="*"/>
                <ColumnDefinition MinWidth="{TemplateBinding MaxHeight}" MaxWidth="{TemplateBinding MaxHeight}"/>
            </Grid.ColumnDefinitions>
            <Track x:Name="PART_Track" Grid.Column="0" Grid.ColumnSpan="3" Margin="1,0" Orientation="Horizontal">
                <Track.DecreaseRepeatButton>
                    <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageLeftCommand"/>
                </Track.DecreaseRepeatButton>
                <Track.Thumb>
                    <Thumb x:Name="Thumb" Style="{StaticResource HorizontalScrollBarThumb}" IsEnabled="False"/>
                </Track.Thumb>
                <Track.IncreaseRepeatButton>
                    <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageRightCommand"/>
                </Track.IncreaseRepeatButton>
            </Track>
            <RepeatButton x:Name="LeftLineButton"
                Grid.Column="0"
                Style="{StaticResource ScrollBarLineButton}"
                Command="ScrollBar.LineLeftCommand">
                <Geometry>M 4 0 L 4 8 L 0 4 Z</Geometry>
            </RepeatButton>
            <RepeatButton x:Name="RightLineButton"
                Grid.Column="2"
                Style="{StaticResource ScrollBarLineButton}"
                Command="ScrollBar.LineRightCommand">
                <Geometry>M 0 0 L 4 4 L 0 8 Z</Geometry>
            </RepeatButton>
        </Grid>
        <ControlTemplate.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="True"/>
            </Trigger>
            <Trigger SourceName="LeftLineButton" Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="False"/>
            </Trigger>
            <Trigger SourceName="RightLineButton" Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="False"/>
            </Trigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <!-- VerticalScrollBarThumb Style -->
    <Style x:Key="VerticalScrollBarThumb" TargetType="{x:Type Thumb}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Thumb}">
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
                                    <VisualTransition From="MouseOver" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0" To="Pressed"/>
                                    <VisualTransition From="Pressed" GeneratedDuration="0:0:0.2"/>
                                    <VisualTransition GeneratedDuration="0:0:0.2" To="Disabled"/>
                                    <VisualTransition From="Disabled" GeneratedDuration="0:0:0.2"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.6"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.9"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DragBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="BaseBorder" Background="Transparent"/>
                        <Border x:Name="DragBorder" CornerRadius="1" Margin="4,0">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource CheckBgColor}" Opacity="0.3"/>
                            </Border.Background>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- VerticalScrollBar Template -->
    <ControlTemplate x:Key="VerticalScrollBar" TargetType="{x:Type ScrollBar}">
        <Grid
            Background="Transparent"
            MinWidth="{TemplateBinding MaxWidth}"
            MaxWidth="{TemplateBinding MaxWidth}">
            <Grid.RowDefinitions>
                <RowDefinition MinHeight="{TemplateBinding MaxWidth}" MaxHeight="{TemplateBinding MaxWidth}"/>
                <RowDefinition Height="*"/>
                <RowDefinition MinHeight="{TemplateBinding MaxWidth}" MaxHeight="{TemplateBinding MaxWidth}"/>
            </Grid.RowDefinitions>
            <Track x:Name="PART_Track" Grid.Row="0" Grid.RowSpan="3" Margin="0,1" Orientation="Vertical" IsDirectionReversed="True">
                <Track.DecreaseRepeatButton>
                    <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageUpCommand"/>
                </Track.DecreaseRepeatButton>
                <Track.Thumb>
                    <Thumb x:Name="Thumb" Style="{StaticResource VerticalScrollBarThumb}" IsEnabled="False"/>
                </Track.Thumb>
                <Track.IncreaseRepeatButton>
                    <RepeatButton Style="{StaticResource ScrollBarPageButton}" Command="ScrollBar.PageDownCommand"/>
                </Track.IncreaseRepeatButton>
            </Track>
            <RepeatButton x:Name="UpLineButton"
                Grid.Row="0"
                Style="{StaticResource ScrollBarLineButton}"
                Command="ScrollBar.LineUpCommand">
                <Geometry>M 0 4 L 8 4 L 4 0 Z</Geometry>
            </RepeatButton>
            <RepeatButton x:Name="DownLineButton"
                Grid.Row="2"
                Style="{StaticResource ScrollBarLineButton}"
                Command="ScrollBar.LineDownCommand">
                <Geometry>M 0 0 L 4 4 L 8 0 Z</Geometry>
            </RepeatButton>
        </Grid>
        <ControlTemplate.Triggers>
            <Trigger Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="True"/>
            </Trigger>
            <Trigger SourceName="UpLineButton" Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="False"/>
            </Trigger>
            <Trigger SourceName="DownLineButton" Property="IsMouseOver" Value="True">
                <Setter TargetName="Thumb" Property="IsEnabled" Value="False"/>
            </Trigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <!-- ScrollBar Style -->
    <Style TargetType="{x:Type ScrollBar}" BasedOn="{StaticResource NoesisControlStyle}">
        <Style.Triggers>
            <Trigger Property="Orientation" Value="Horizontal">
                <Setter Property="MaxHeight" Value="15"/>
                <Setter Property="Template" Value="{StaticResource HorizontalScrollBar}"/>
            </Trigger>
            <Trigger Property="Orientation" Value="Vertical">
                <Setter Property="MaxWidth" Value="15"/>
                <Setter Property="Template" Value="{StaticResource VerticalScrollBar}"/>
            </Trigger>
        </Style.Triggers>
    </Style>

    
    <!-- ============== SCROLL VIEWER ============== -->

    <!-- ScrollViewer Style -->
    <Style TargetType="{x:Type ScrollViewer}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="MinWidth" Value="15"/>
        <Setter Property="MinHeight" Value="15"/>
		
        <!-- PanningMode leads to problem, see Asana: "NoesisBug: FileOps top row buttons color not changed on touch  (Android)"
			but without it we cannot scroll with touch the "new stroke tip" for example -->
        <Setter Property="PanningMode" Value="Both"/>

        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ScrollViewer}">
                    <Grid Background="{TemplateBinding Background}">

                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*"/>
                            <ColumnDefinition Width="Auto"/>
                        </Grid.ColumnDefinitions>

                        <Grid.RowDefinitions>
                            <RowDefinition Height="*"/>
                            <RowDefinition Height="Auto"/>
                        </Grid.RowDefinitions>

                        <ScrollContentPresenter
                            Grid.Column="0"
                            Grid.ColumnSpan="2"
                            Grid.Row="0"
                            Grid.RowSpan="2"
                            Content="{TemplateBinding Content}"
                            ContentTemplate="{TemplateBinding ContentTemplate}"
                            ContentTemplateSelector="{TemplateBinding ContentTemplateSelector}"
                            CanContentScroll="{TemplateBinding CanContentScroll}"
                            Margin="{TemplateBinding Padding}"/>

                        <!-- The visibility of the ScrollBars is controlled by the implementation of the control -->
                        <ScrollBar x:Name="PART_HorizontalScrollBar"
                            Grid.Column="0"
                            Grid.ColumnSpan="2"
                            Grid.Row="1"
                            Orientation="Horizontal"
                            MaxHeight="{TemplateBinding MinHeight}"
                            Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"
                            Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}"
                            ViewportSize="{TemplateBinding ViewportWidth}"
                            Minimum="0"
                            Maximum="{TemplateBinding ScrollableWidth}"/>
                        <ScrollBar x:Name="PART_VerticalScrollBar"
                            Grid.Column="1"
                            Grid.Row="0"
                            Grid.RowSpan="2"
                            Orientation="Vertical"
                            MaxWidth="{TemplateBinding MinWidth}"
                            Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
                            Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}"
                            ViewportSize="{TemplateBinding ViewportHeight}"
                            Minimum="0"
                            Maximum="{TemplateBinding ScrollableHeight}"/>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger SourceName="PART_HorizontalScrollBar" Property="IsMouseOver" Value="True">
                            <Setter TargetName="PART_HorizontalScrollBar" Property="Panel.ZIndex" Value="1"/>
                        </Trigger>
                        <Trigger SourceName="PART_VerticalScrollBar" Property="IsMouseOver" Value="True">
                            <Setter TargetName="PART_VerticalScrollBar" Property="Panel.ZIndex" Value="1"/>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    
    <!-- ============== SLIDER ============== -->

    <!-- SliderButton Style -->
    <Style x:Key="SliderButtonStyle" TargetType="{x:Type RepeatButton}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="ClickMode" Value="Press"/>
        <Setter Property="Delay" Value="250"/>
        <Setter Property="Interval" Value="100"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type RepeatButton}">
                    <Border
                        Background="Transparent"
                        Padding="{TemplateBinding Padding}">
                        <Border x:Name="CheckBorder"
                            Background="{TemplateBinding Background}"/>
                    </Border>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- SliderThumb Style -->
    <Style x:Key="SliderThumbStyle" TargetType="{x:Type Thumb}">
        <Setter Property="TabIndex" Value="-2"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type Thumb}">
                    <ControlTemplate.Resources>
                        <Storyboard x:Key="FocusOn">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush).(Brush.Opacity)" Storyboard.TargetName="FocusBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="1"/>
                            </DoubleAnimationUsingKeyFrames>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush).(Brush.Opacity)" Storyboard.TargetName="FocusInnerBorder">
                                <EasingDoubleKeyFrame KeyTime="0" Value="0.25"/>
                            </DoubleAnimationUsingKeyFrames>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="FocusInnerBorder">
                                <EasingDoubleKeyFrame KeyTime="0" Value="0.25"/>
                            </DoubleAnimationUsingKeyFrames>
                        </Storyboard>
                        <Storyboard x:Key="FocusOff">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush).(Brush.Opacity)" Storyboard.TargetName="FocusBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="0"/>
                            </DoubleAnimationUsingKeyFrames>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush).(Brush.Opacity)" Storyboard.TargetName="FocusInnerBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="0"/>
                            </DoubleAnimationUsingKeyFrames>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="FocusInnerBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.3" Value="0"/>
                            </DoubleAnimationUsingKeyFrames>
                        </Storyboard>
                    </ControlTemplate.Resources>
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
                                    <VisualTransition From="MouseOver" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0" To="Pressed"/>
                                    <VisualTransition From="Pressed" GeneratedDuration="0:0:0.2"/>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="Disabled"/>
                                    <VisualTransition From="Disabled" GeneratedDuration="0:0:0.1"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="OverBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="OverBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="OverBorder">
                                            <EasingColorKeyFrame KeyTime="0" Value="{StaticResource PressOverlay}"/>
                                        </ColorAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="BaseBorder"
                            Background="{StaticResource NormalBgBrush}"
                            BorderBrush="{StaticResource NormalBdBrush}"
                            BorderThickness="1"
                            CornerRadius="1"/>
                        <Border x:Name="OverBorder"
                            BorderThickness="1"
                            CornerRadius="1">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource OverOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Border x:Name="FocusBorder"
                            CornerRadius="1"
                            BorderThickness="1">
                            <Border.BorderBrush>
                                <SolidColorBrush Color="{StaticResource FocusColor}" Opacity="0"/>
                            </Border.BorderBrush>
                            <Border x:Name="FocusInnerBorder"
                                BorderThickness="1"
                                CornerRadius="0.01">
                                <Border.Background>
                                    <SolidColorBrush Color="{StaticResource FocusGlowColor}" Opacity="0"/>
                                </Border.Background>
                                <Border.BorderBrush>
                                    <SolidColorBrush Color="{StaticResource FocusShineColor}" Opacity="0"/>
                                </Border.BorderBrush>
                            </Border>
                        </Border>
                        <Border x:Name="DisabledBorder"
                            CornerRadius="1.5">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="TabIndex" Value="-1">
                            <Trigger.ExitActions>
                                <BeginStoryboard Storyboard="{StaticResource FocusOff}"/>
                            </Trigger.ExitActions>
                            <Trigger.EnterActions>
                                <BeginStoryboard Storyboard="{StaticResource FocusOn}"/>
                            </Trigger.EnterActions>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!-- HorizontalSlider Template -->
    <ControlTemplate x:Key="HorizontalSlider" TargetType="{x:Type Slider}">
        <Grid Background="{TemplateBinding Background}">
            <Grid.RowDefinitions>
                <RowDefinition Height="Auto"/>
                <RowDefinition Height="*"/>
                <RowDefinition Height="Auto"/>
            </Grid.RowDefinitions>
            <VisualStateManager.VisualStateGroups>
                <VisualStateGroup x:Name="CommonStates">
                    <VisualStateGroup.Transitions>
                        <VisualTransition GeneratedDuration="0:0:0.1" To="Disabled"/>
                        <VisualTransition From="Disabled" GeneratedDuration="0:0:0.1"/>
                    </VisualStateGroup.Transitions>
                    <VisualState x:Name="Normal"/>
                    <VisualState x:Name="MouseOver"/>
                    <VisualState x:Name="Disabled">
                        <Storyboard>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)" Storyboard.TargetName="DisabledTrackBg">
                                <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                            </DoubleAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="DecBtn">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledCheckBgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TickBar.Fill).(SolidColorBrush.Color)" Storyboard.TargetName="TopTick">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledFgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TickBar.Fill).(SolidColorBrush.Color)" Storyboard.TargetName="BottomTick">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledFgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                        </Storyboard>
                    </VisualState>
                </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <TickBar x:Name="TopTick"
                Placement="Top"
                Height="4"
                Visibility="Collapsed" Margin="0,0,0,1">
                <TickBar.Fill>
                    <SolidColorBrush Color="{StaticResource NormalFgColor}"/>
                </TickBar.Fill>
            </TickBar>
            <TickBar x:Name="BottomTick"
                Grid.Row="2"
                Placement="Bottom"
                Height="4"
                Visibility="Collapsed" Margin="0,1,0,0">
                <TickBar.Fill>
                    <SolidColorBrush Color="{StaticResource NormalFgColor}"/>
                </TickBar.Fill>
            </TickBar>
            <Rectangle x:Name="TrackBg"
                Grid.Row="1"
                RadiusX="1" RadiusY="1"
                Margin="3,6"
                Fill="{StaticResource TrackBgBrush}"
                Stroke="{StaticResource TrackBdBrush}"/>
            <Rectangle x:Name="DisabledTrackBg"
                Grid.Row="1"
                RadiusX="1.5" RadiusY="1.5"
                Margin="3,6">
                <Rectangle.Fill>
                    <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                </Rectangle.Fill>
            </Rectangle>
            <Track Grid.Row="1" x:Name="PART_Track">
                <Track.DecreaseRepeatButton>
                    <RepeatButton x:Name="DecBtn"
                        Style="{StaticResource SliderButtonStyle}"
                        Padding="4,7,0,7"
                        Command="Slider.DecreaseLarge">
                        <RepeatButton.Background>
                            <SolidColorBrush Color="{StaticResource CheckBgColor}"/>
                        </RepeatButton.Background>
                    </RepeatButton>
                </Track.DecreaseRepeatButton>
                <Track.Thumb>
                    <Thumb x:Name="SliderThumb"
                        Width="10"
                        MinHeight="20"
                        Style="{StaticResource SliderThumbStyle}"/>
                </Track.Thumb>
                <Track.IncreaseRepeatButton>
                    <RepeatButton
                        Style="{StaticResource SliderButtonStyle}"
                        Command="Slider.IncreaseLarge"/>
                </Track.IncreaseRepeatButton>
            </Track>
        </Grid>
        <ControlTemplate.Triggers>
            <Trigger Property="IsDirectionReversed" Value="True">
                <Setter Property="Padding" TargetName="DecBtn" Value="0,7,4,7"/>
            </Trigger>
            <Trigger Property="IsKeyboardFocused" Value="True">
                <Setter TargetName="SliderThumb" Property="TabIndex" Value="-1"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="TopLeft">
                <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="BottomRight">
                <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="Both">
                <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/>
                <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/>
            </Trigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <!-- VerticalSlider Template -->
    <ControlTemplate x:Key="VerticalSlider" TargetType="{x:Type Slider}">
        <Grid Background="{TemplateBinding Background}">
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="Auto"/>
                <ColumnDefinition Width="{TemplateBinding MinWidth}"/>
                <ColumnDefinition Width="Auto"/>
            </Grid.ColumnDefinitions>
            <VisualStateManager.VisualStateGroups>
                <VisualStateGroup x:Name="CommonStates">
                    <VisualStateGroup.Transitions>
                        <VisualTransition GeneratedDuration="0:0:0.1" To="Disabled"/>
                        <VisualTransition From="Disabled" GeneratedDuration="0:0:0.1"/>
                    </VisualStateGroup.Transitions>
                    <VisualState x:Name="Normal"/>
                    <VisualState x:Name="MouseOver"/>
                    <VisualState x:Name="Disabled">
                        <Storyboard>
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Shape.Fill).(Brush.Opacity)" Storyboard.TargetName="DisabledTrackBg">
                                <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                            </DoubleAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="DecBtn">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledCheckBgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TickBar.Fill).(SolidColorBrush.Color)" Storyboard.TargetName="TopTick">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledFgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TickBar.Fill).(SolidColorBrush.Color)" Storyboard.TargetName="BottomTick">
                                <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledFgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                        </Storyboard>
                    </VisualState>
                </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>
            <TickBar x:Name="TopTick"
                Placement="Left"
                Width="4" Margin="0,0,1,0"
                Visibility="Collapsed">
                <TickBar.Fill>
                    <SolidColorBrush Color="{StaticResource NormalFgColor}"/>
                </TickBar.Fill>
            </TickBar>
            <TickBar x:Name="BottomTick"
                Grid.Column="2"
                Placement="Right"
                Width="4" Margin="1,0,0,0"
                Visibility="Collapsed">
                <TickBar.Fill>
                    <SolidColorBrush Color="{StaticResource NormalFgColor}"/>
                </TickBar.Fill>
            </TickBar>
            <Rectangle x:Name="TrackBg"
                Grid.Column="1"
                RadiusX="1" RadiusY="1"
                Margin="6,3"
                Fill="{StaticResource TrackBgBrush}"
                Stroke="{StaticResource TrackBdBrush}"/>
            <Rectangle x:Name="DisabledTrackBg"
                Grid.Column="1"
                RadiusX="1.5" RadiusY="1.5"
                Margin="6,3">
                <Rectangle.Fill>
                    <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                </Rectangle.Fill>
            </Rectangle>
            <Track Grid.Column="1" x:Name="PART_Track" Orientation="Vertical">
                <Track.DecreaseRepeatButton>
                    <RepeatButton x:Name="DecBtn"
                        Style="{StaticResource SliderButtonStyle}"
                        Padding="7,0,7,4"
                        Command="Slider.DecreaseLarge" >
                        <RepeatButton.Background>
                            <SolidColorBrush Color="{StaticResource CheckBgColor}"/>
                        </RepeatButton.Background>
                    </RepeatButton>
                </Track.DecreaseRepeatButton>
                <Track.Thumb>
                    <Thumb x:Name="SliderThumb"
                        MinWidth="20"
                        Height="10"
                        Style="{StaticResource SliderThumbStyle}" />
                </Track.Thumb>
                <Track.IncreaseRepeatButton>
                    <RepeatButton
                        Style="{StaticResource SliderButtonStyle}"
                        Command="Slider.IncreaseLarge" />
                </Track.IncreaseRepeatButton>
            </Track>
        </Grid>
        <ControlTemplate.Triggers>
            <Trigger Property="IsDirectionReversed" Value="True">
                <Setter Property="Padding" TargetName="DecBtn" Value="7,4,7,0"/>
            </Trigger>
            <Trigger Property="IsKeyboardFocused" Value="True">
                <Setter TargetName="SliderThumb" Property="TabIndex" Value="-1"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="TopLeft">
                <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="BottomRight">
                <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/>
            </Trigger>
            <Trigger Property="TickPlacement" Value="Both">
                <Setter TargetName="TopTick" Property="Visibility" Value="Visible"/>
                <Setter TargetName="BottomTick" Property="Visibility" Value="Visible"/>
            </Trigger>
        </ControlTemplate.Triggers>
    </ControlTemplate>

    <!-- Slider Style -->
    <Style TargetType="{x:Type Slider}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="Transparent"/>
        <Style.Triggers>
            <Trigger Property="Orientation" Value="Horizontal">
                <Setter Property="MinHeight" Value="20"/>
                <Setter Property="Template" Value="{StaticResource HorizontalSlider}" />
            </Trigger>
            <Trigger Property="Orientation" Value="Vertical">
                <Setter Property="MinWidth" Value="20"/>
                <Setter Property="Template" Value="{StaticResource VerticalSlider}" />
            </Trigger>
        </Style.Triggers>
    </Style>

    
    <!-- ============== PROGRESS BAR ============== -->

    <!-- ProgressBar Style -->
    <Style TargetType="{x:Type ProgressBar}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{StaticResource TrackBgBrush}"/>
        <Setter Property="BorderBrush" Value="{StaticResource TrackBdBrush}"/>
        <Setter Property="BorderThickness" Value="1"/>
        <Setter Property="Padding" Value="1"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ProgressBar}">
                    <ControlTemplate.Resources>
                        <Storyboard x:Key="OnIndeterminate" RepeatBehavior="Forever">
                            <PointAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(LinearGradientBrush.StartPoint)" Storyboard.TargetName="IndicatorIndeterminate">
                                <EasingPointKeyFrame KeyTime="0:0:1" Value="20,0"/>
                            </PointAnimationUsingKeyFrames>
                            <PointAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(LinearGradientBrush.EndPoint)" Storyboard.TargetName="IndicatorIndeterminate">
                                <EasingPointKeyFrame KeyTime="0:0:1" Value="30,0"/>
                            </PointAnimationUsingKeyFrames>
                        </Storyboard>
                        <Storyboard x:Key="OffIndeterminate">
                            <PointAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(LinearGradientBrush.StartPoint)" Storyboard.TargetName="IndicatorIndeterminate">
                                <EasingPointKeyFrame KeyTime="0" Value="0,0"/>
                            </PointAnimationUsingKeyFrames>
                            <PointAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(LinearGradientBrush.EndPoint)" Storyboard.TargetName="IndicatorIndeterminate">
                                <EasingPointKeyFrame KeyTime="0" Value="10,0"/>
                            </PointAnimationUsingKeyFrames>
                        </Storyboard>
                        <Storyboard x:Key="OnDisabled">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledTrack">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="1"/>
                            </DoubleAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="IndicatorBorder">
                                <EasingColorKeyFrame KeyTime="0:0:0.1" Value="{StaticResource DisabledCheckBgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                        </Storyboard>
                        <Storyboard x:Key="OnEnabled">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledTrack">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="0"/>
                            </DoubleAnimationUsingKeyFrames>
                            <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(SolidColorBrush.Color)" Storyboard.TargetName="IndicatorBorder">
                                <EasingColorKeyFrame KeyTime="0:0:0.1" Value="{StaticResource CheckBgColor}"/>
                            </ColorAnimationUsingKeyFrames>
                        </Storyboard>
                    </ControlTemplate.Resources>
                    <Grid>
                        <Border x:Name="PART_Track"
                            Background="{TemplateBinding Background}"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}"
                            CornerRadius="1"/>
                        <Border x:Name="DisabledTrack"
                            CornerRadius="1.5">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Grid x:Name="PART_Indicator"
                            HorizontalAlignment="Left">
                            <Border x:Name="IndicatorBorder"
                                Margin="{TemplateBinding Padding}">
                                <Border.Background>
                                    <SolidColorBrush Color="{StaticResource CheckBgColor}"/>
                                </Border.Background>
                                <Border x:Name="IndicatorIndeterminate" Visibility="Collapsed">
                                    <Border.Background>
                                        <LinearGradientBrush StartPoint="0,0" EndPoint="10,0" MappingMode="Absolute" SpreadMethod="Reflect">
                                            <LinearGradientBrush.RelativeTransform>
                                                <RotateTransform CenterY="0.5" CenterX="0.5" Angle="3"/>
                                            </LinearGradientBrush.RelativeTransform>
                                            <GradientStop Color="#00252B32" Offset="0.4"/>
                                            <GradientStop Color="#A0252B32" Offset="1"/>
                                        </LinearGradientBrush>
                                    </Border.Background>
                                </Border>
                            </Border>
                        </Grid>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsIndeterminate" Value="True">
                            <Trigger.EnterActions>
                                <BeginStoryboard Storyboard="{StaticResource OnIndeterminate}"/>
                            </Trigger.EnterActions>
                            <Trigger.ExitActions>
                                <BeginStoryboard Storyboard="{StaticResource OffIndeterminate}"/>
                            </Trigger.ExitActions>
                            <Setter Property="Visibility" TargetName="IndicatorIndeterminate" Value="Visible"/>
                        </Trigger>
                        <Trigger Property="IsEnabled" Value="false">
                            <Trigger.ExitActions>
                                <BeginStoryboard Storyboard="{StaticResource OnEnabled}"/>
                            </Trigger.ExitActions>
                            <Trigger.EnterActions>
                                <BeginStoryboard Storyboard="{StaticResource OnDisabled}"/>
                            </Trigger.EnterActions>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    
    <!-- ============== LIST BOX ============== -->
    
    <!-- ListBox Style -->
    <Style TargetType="{x:Type ListBox}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="{StaticResource TrackBgBrush}"/>
        <Setter Property="BorderBrush" Value="{StaticResource TrackBdBrush}"/>
        <Setter Property="Focusable" Value="False"/>
        <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
        <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
        <Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
        <Setter Property="ScrollViewer.PanningMode" Value="VerticalFirst"/>
        <Setter Property="VirtualizingPanel.VirtualizationMode" Value="Recycling"/>
        <Setter Property="VirtualizingPanel.ScrollUnit" Value="Pixel"/>
        <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ListBox}">
                    <ControlTemplate.Resources>
                        <Storyboard x:Key="OnDisabled">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="1"/>
                            </DoubleAnimationUsingKeyFrames>
                        </Storyboard>
                        <Storyboard x:Key="OnEnabled">
                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledBorder">
                                <EasingDoubleKeyFrame KeyTime="0:0:0.1" Value="0"/>
                            </DoubleAnimationUsingKeyFrames>
                        </Storyboard>
                    </ControlTemplate.Resources>
                    <Grid>
                        <Border x:Name="BaseBorder"
                            Background="{TemplateBinding Background}"
                            BorderBrush="{TemplateBinding BorderBrush}"
                            BorderThickness="{TemplateBinding BorderThickness}"
                            CornerRadius="1"/>
                        <Border x:Name="DisabledBorder"
                            CornerRadius="1.5">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Border
                            BorderThickness="{TemplateBinding BorderThickness}">
                            <ScrollViewer
                                Focusable="False"
                                Padding="{TemplateBinding Padding}"
                                Foreground="{TemplateBinding Foreground}">
                                <ItemsPresenter />
                            </ScrollViewer>
                        </Border>
                    </Grid>
                    <ControlTemplate.Triggers>
                        <Trigger Property="IsEnabled" Value="false">
                            <Trigger.ExitActions>
                                <BeginStoryboard Storyboard="{StaticResource OnEnabled}"/>
                            </Trigger.ExitActions>
                            <Trigger.EnterActions>
                                <BeginStoryboard Storyboard="{StaticResource OnDisabled}"/>
                            </Trigger.EnterActions>
                        </Trigger>
                    </ControlTemplate.Triggers>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    
    <!-- ListBoxItem Style -->
    <Style TargetType="{x:Type ListBoxItem}" BasedOn="{StaticResource NoesisControlStyle}">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderBrush" Value="Transparent"/>
        <Setter Property="HorizontalContentAlignment" Value="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
        <Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
        <Setter Property="Padding" Value="4"/>
        <Setter Property="FocusVisualStyle" Value="{x:Null}"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type ListBoxItem}">
                    <Grid Margin="0,0,0,1">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="MouseOver"/>
                                    <VisualTransition From="MouseOver" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="Disabled"/>
                                    <VisualTransition From="Disabled" GeneratedDuration="0:0:0.1"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="OverBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="ContentHost">
                                            <EasingColorKeyFrame KeyTime="0" Value="{StaticResource OverFgColor}"/>
                                        </ColorAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="DisabledBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <ColorAnimationUsingKeyFrames Storyboard.TargetProperty="(TextElement.Foreground).(SolidColorBrush.Color)" Storyboard.TargetName="ContentHost">
                                            <EasingColorKeyFrame KeyTime="0" Value="{StaticResource DisabledFgColor}"/>
                                        </ColorAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="SelectionStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="Selected"/>
                                    <VisualTransition From="Selected" GeneratedDuration="0:0:0.3"/>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="SelectedUnfocused"/>
                                    <VisualTransition From="SelectedUnfocused" GeneratedDuration="0:0:0.3"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Unselected"/>
                                <VisualState x:Name="Selected">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="SelectBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="SelectedUnfocused">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="SelectBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.8"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.Visibility)" Storyboard.TargetName="DisabledBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{x:Static Visibility.Visible}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="FocusStates">
                                <VisualStateGroup.Transitions>
                                    <VisualTransition GeneratedDuration="0:0:0.1" To="Focused"/>
                                    <VisualTransition From="Focused" GeneratedDuration="0:0:0.3"/>
                                </VisualStateGroup.Transitions>
                                <VisualState x:Name="Unfocused"/>
                                <VisualState x:Name="Focused">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Border.BorderBrush).(Brush.Opacity)" Storyboard.TargetName="FocusBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="1"/>
                                        </DoubleAnimationUsingKeyFrames>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Panel.Background).(Brush.Opacity)" Storyboard.TargetName="FocusBorder">
                                            <EasingDoubleKeyFrame KeyTime="0" Value="0.25"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="OverBorder">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource OverOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Border x:Name="SelectBorder">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource PressOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Border x:Name="FocusBorder"
                            BorderThickness="1">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource FocusGlowColor}" Opacity="0"/>
                            </Border.Background>
                            <Border.BorderBrush>
                                <SolidColorBrush Color="{StaticResource FocusShineColor}" Opacity="0"/>
                            </Border.BorderBrush>
                        </Border>
                        <Border x:Name="DisabledBorder" Visibility="Collapsed">
                            <Border.Background>
                                <SolidColorBrush Color="{StaticResource DisabledOverlay}" Opacity="0"/>
                            </Border.Background>
                        </Border>
                        <Border x:Name="Border"
                            BorderThickness="{TemplateBinding BorderThickness}"
                            Padding="{TemplateBinding Padding}">
                            <ContentPresenter x:Name="ContentHost"
                                HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                VerticalAlignment="{TemplateBinding VerticalContentAlignment}">
                                <TextElement.Foreground>
                                    <SolidColorBrush Color="{StaticResource NormalFgColor}"/>
                                </TextElement.Foreground>
                            </ContentPresenter>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    
    <!-- ============== TEXT BOX ============== -->
    <!-- TextBox Style --> 

    <Style TargetType="TextBox"> <!-- Fantasia default -->
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeMediumLarge}"/>
        <Setter Property="Background" Value="{StaticResource PhoneTextBoxBrush}"/>
        <Setter Property="Foreground" Value="{StaticResource PhoneTextBoxForegroundBrush}"/>
        <Setter Property="BorderBrush" Value="{StaticResource PhoneTextBoxBrush}"/>
        
        <!-- Not supported by Noesis
        <Setter Property="SelectionBackground" Value="{StaticResource PhoneAccentBrush}"/>
        <Setter Property="SelectionForeground" Value="{StaticResource PhoneTextBoxSelectionForegroundBrush}"/>-->

        <Setter Property="BorderThickness" Value="{StaticResource PhoneBorderThickness}"/>
        <Setter Property="Padding" Value="4,2"/>

        <!-- Few settings taken from Noesis style and adapted with WP styles -->
        <Setter Property="CaretBrush" Value="{StaticResource PhoneTextCaretBrush}"/>
        <Setter Property="SelectionBrush" Value="{StaticResource PhoneAccentBrush}"/>
        <Setter Property="SelectionOpacity" Value="0.5"/>
        <Setter Property="KeyboardNavigation.TabNavigation" Value="None"/>
        <Setter Property="AllowDrop" Value="True"/>
        <!-- end of Noesis settings -->
    
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="TextBox">
                    <Grid Background="Transparent">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="MainBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="Transparent"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="MainBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentElement">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="ReadOnly">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="MainBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Collapsed</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="ReadonlyBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ReadonlyBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneTextBoxBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ReadonlyBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneTextBoxBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentElement">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneTextBoxReadOnlyBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="FocusStates">
                                <VisualState x:Name="Focused">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="MainBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneTextBoxEditBackgroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="MainBorder">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneTextBoxEditBorderBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Unfocused"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="MainBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Margin="{StaticResource PhoneTouchTargetOverhang}"/>
                        <Border x:Name="ReadonlyBorder" BorderBrush="{StaticResource PhoneDisabledBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="Transparent" Margin="{StaticResource PhoneTouchTargetOverhang}" Visibility="Collapsed"/>
                        <Border BorderBrush="Transparent" BorderThickness="{TemplateBinding BorderThickness}" Background="Transparent" Margin="{StaticResource PhoneTouchTargetOverhang}">
                            <!-- ATTENTION: This control is taken from Noesis template - it is needed to show the text -->
                            <ScrollViewer x:Name="PART_ContentHost" Padding="{TemplateBinding Padding}" Foreground="{TemplateBinding Foreground}" VerticalAlignment="Center"/>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>


    <!-- ============== FROM FANTASIA APP.XAML ================ -->
    <Style x:Key="appBarTextStyle" TargetType="TextBlock">
	  <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>	
      <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}" />
      <Setter Property="Margin" Value="-12,6,-12,-20" />
      <Setter Property="TextWrapping" Value="Wrap" />
      <Setter Property="VerticalAlignment" Value="Bottom" />
      <Setter Property="HorizontalAlignment" Value="Center" />
      <Setter Property="Foreground" Value="White" />
      <Setter Property="FontWeight" Value="Normal" />
      <Setter Property="TextAlignment" Value="Center" />
      <Setter Property="Visibility" Value="Collapsed" />
    </Style>

    <Style x:Key="buttonTextStyle" TargetType="TextBlock">
        <Setter Property="FontFamily" Value="{StaticResource PhoneFontFamilyNormal}"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}" />
        <Setter Property="Margin" Value="-9,8,-9,2" />
        <Setter Property="TextWrapping" Value="Wrap" />
        <Setter Property="VerticalAlignment" Value="Bottom" />
        <Setter Property="HorizontalAlignment" Value="Center" />
        <Setter Property="Foreground" Value="White" />
        <Setter Property="FontWeight" Value="Normal" />
        <Setter Property="TextAlignment" Value="Center" />
    </Style>

    <Style x:Key="PhoneButtonBase" TargetType="ButtonBase">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderBrush" Value="{StaticResource PhoneForegroundBrush}"/>
        <Setter Property="Foreground" Value="{StaticResource PhoneForegroundBrush}"/>
        <Setter Property="BorderThickness" Value="{StaticResource PhoneBorderThickness}"/>
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilySemiBold}"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeMediumLarge}"/>
        <Setter Property="Padding" Value="10,3,10,5"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="ButtonBase">
                    <Grid Background="Transparent">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneBackgroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneForegroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneForegroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="Transparent"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="ButtonBackground" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="0" Margin="{StaticResource PhoneTouchTargetOverhang}">
                            <ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

  <Style TargetType="Button" x:Key="btnFileOps" BasedOn="{StaticResource PhoneButtonBase}" >
      <Setter Property="FontWeight" Value="Normal" />
      <Setter Property="Padding" Value="40,12" />
    <Setter Property="Template">
      <Setter.Value>
        <ControlTemplate TargetType="ButtonBase">
          <Grid Background="{TemplateBinding Background}">
            <VisualStateManager.VisualStateGroups>
              <VisualStateGroup x:Name="CommonStates">
                <VisualState x:Name="Normal"/>
                <VisualState x:Name="MouseOver"/>
                <VisualState x:Name="Pressed">
                  <Storyboard>
                    <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="ButtonBackground">
                      <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneAccentBrush}"/>
                    </ObjectAnimationUsingKeyFrames>
                  </Storyboard>
                </VisualState>
                <VisualState x:Name="Disabled" />
              </VisualStateGroup>
            </VisualStateManager.VisualStateGroups>

            <Rectangle x:Name="ButtonBackground" />
            <ContentControl x:Name="ContentContainer" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="Left" Padding="{TemplateBinding Padding}" Content="{TemplateBinding Content}" />
          </Grid> 
        </ControlTemplate>
      </Setter.Value>
    </Setter>
  </Style>

  <Style x:Key="PhoneRadioButtonCheckBoxBase" BasedOn="{StaticResource PhoneButtonBase}" TargetType="ToggleButton">
        <Setter Property="Background" Value="{StaticResource PhoneRadioCheckBoxBrush}"/>
        <Setter Property="BorderBrush" Value="{StaticResource PhoneRadioCheckBoxBrush}"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeMedium}" />
        <Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Padding" Value="0"/>
    </Style>

	<Style x:Key="radioSelection" BasedOn="{StaticResource PhoneRadioButtonCheckBoxBase}" TargetType="RadioButton">
		<Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}"/>
		<Setter Property="Width" Value="60"/>
		<Setter Property="MinHeight" Value="60"/>
		<Setter Property="MaxHeight" Value="70"/>
		<Setter Property="VerticalContentAlignment" Value="Top"/>
		<Setter Property="Background" Value="Transparent" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="RadioButton">
					<Grid Background="Transparent">
						<VisualStateManager.VisualStateGroups>
							<VisualStateGroup x:Name="CommonStates">
								<VisualState x:Name="Normal"/>
								<VisualState x:Name="MouseOver"/>
								<VisualState x:Name="Pressed"/>
								<VisualState x:Name="Disabled">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
							</VisualStateGroup>
							<VisualStateGroup x:Name="CheckStates">
								<VisualState x:Name="Checked">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="CheckMark">
											<DiscreteObjectKeyFrame KeyTime="0">
												<DiscreteObjectKeyFrame.Value>
													<Visibility>Visible</Visibility>
												</DiscreteObjectKeyFrame.Value>
											</DiscreteObjectKeyFrame>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
								<VisualState x:Name="Unchecked"/>
								<VisualState x:Name="Indeterminate"/>
							</VisualStateGroup>
							<VisualStateGroup x:Name="FocusStates">
								<VisualState x:Name="Focused"/>
								<VisualState x:Name="Unfocused"/>
							</VisualStateGroup>
						</VisualStateManager.VisualStateGroups>
						<Grid>
							<Rectangle Fill="{TemplateBinding Background}" Margin="{TemplateBinding Padding}" />
							<Rectangle x:Name="CheckMark" Fill="{StaticResource PhoneAccentBrush}" IsHitTestVisible="False" Visibility="Collapsed" Margin="{TemplateBinding Padding}"/>
							<ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" FontSize="{TemplateBinding FontSize}" FontFamily="{TemplateBinding FontFamily}" 
											HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
						</Grid>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	
    <Style x:Key="RadioCircle" BasedOn="{StaticResource PhoneRadioButtonCheckBoxBase}" TargetType="RadioButton">
        <Setter Property="Padding" Value="0" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="RadioButton">
                    <Grid Background="Transparent" x:Name="body">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed"/>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="body">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="0.3"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="CheckStates">
                                <VisualState x:Name="Checked">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="back">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneAccentBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Unchecked"/>
                                <VisualState x:Name="Indeterminate"/>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="FocusStates">
                                <VisualState x:Name="Focused"/>
                                <VisualState x:Name="Unfocused"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Ellipse Height="35" Width="35" x:Name="back" Margin="{TemplateBinding Padding}" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" StrokeThickness="5" VerticalAlignment="Top">
                            <Ellipse.Stroke>
                                <RadialGradientBrush>
                                    <GradientStop Offset="0.857"/>
                                    <GradientStop Color="#FFFFFFFF" Offset="0.90"/>
                                    <GradientStop Color="#FFFFFFFF" Offset="0.93"/>
                                    <GradientStop Offset="1"/>
                                </RadialGradientBrush>
                            </Ellipse.Stroke>
                        </Ellipse>
                        <ContentControl x:Name="ContentContainer" Content="{TemplateBinding Content}" Margin="{TemplateBinding Padding}" VerticalAlignment="Top" />
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="ButtonCircle" TargetType="Button">
        <Setter Property="Width" Value="50"/>
        <Setter Property="MinHeight" Value="50"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Grid Background="Transparent" x:Name="body">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="border">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ContentContainer">
                                            <DiscreteDoubleKeyFrame KeyTime="0" Value="0.3"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Grid Margin="{TemplateBinding Padding}">
                            <ContentControl x:Name="ContentContainer" Content="{TemplateBinding Content}" VerticalAlignment="Top" Margin="9,9,9,0" />
                            <Ellipse x:Name="border" Visibility="Collapsed" IsHitTestVisible="False" Height="35" Width="35" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="7.5">
                                <Ellipse.Fill>
                                    <RadialGradientBrush>
                                        <GradientStop Color="#6bFFFFFF" Offset="0"/>
                                        <GradientStop Color="#6bFFFFFF" Offset="0.94"/>
                                        <GradientStop Offset="1"/>
                                    </RadialGradientBrush>
                                </Ellipse.Fill>
                            </Ellipse>
                        </Grid>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="ButtonRectNoMargin" TargetType="Button"><!--The only diff is no margin for content container-->
        <Setter Property="Width" Value="50"/>
        <Setter Property="MinHeight" Value="50"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Padding" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Grid Background="Transparent" x:Name="body">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="border">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ContentContainer">
                                            <DiscreteDoubleKeyFrame KeyTime="0" Value="0.3"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Grid Margin="{TemplateBinding Padding}">
                            <ContentControl x:Name="ContentContainer" Content="{TemplateBinding Content}" VerticalAlignment="Stretch"  />
                            <Border x:Name="border" Visibility="Collapsed" IsHitTestVisible="False" Background="{StaticResource PhoneSubtle7Brush}" />
                        </Grid>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="ButtonBack" TargetType="Button"><!--Back button is special case: rect and padding decides overhang-->
        <Setter Property="Width" Value="50"/>
        <Setter Property="MinHeight" Value="50"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="Padding" Value="0"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Grid Background="Transparent" x:Name="body">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="border">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="ContentContainer">
                                            <DiscreteDoubleKeyFrame KeyTime="0" Value="0.3"/>
                                        </DoubleAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Grid Margin="{TemplateBinding Padding}">
                            <ContentControl x:Name="ContentContainer" Content="{TemplateBinding Content}" VerticalAlignment="Stretch" />
                            <Border x:Name="border" Visibility="Collapsed" IsHitTestVisible="False" Background="{StaticResource PhoneSubtle7Brush}"
                            CornerRadius="0,3,0,0"/>
                        </Grid>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="CheckCircle" TargetType="CheckBox">
        <Setter Property="Width" Value="50"/>
        <Setter Property="MinHeight" Value="50"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="CheckBox" >
                    <Grid Background="Transparent" x:Name="body">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal" />
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="back">
                                            <DiscreteObjectKeyFrame KeyTime="0">
                                                <DiscreteObjectKeyFrame.Value>
                                                    <Visibility>Visible</Visibility>
                                                </DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity" Storyboard.TargetName="body">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="0.3"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="CheckStates">
                                <VisualState x:Name="Checked">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="back">
                                            <DiscreteObjectKeyFrame KeyTime="0">
												<DiscreteObjectKeyFrame.Value>
													<Visibility>Visible</Visibility>
												</DiscreteObjectKeyFrame.Value>
                                            </DiscreteObjectKeyFrame>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Unchecked" />
                                <VisualState x:Name="Indeterminate"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Grid Margin="{TemplateBinding Padding}">
                            <Ellipse x:Name="back" Height="33" Width="33" HorizontalAlignment="Center" VerticalAlignment="Top" Margin="8.5" Visibility="Collapsed">
                                <!--Fill="#6BFFFFFF"-->
                                <Ellipse.Fill>
                                    <RadialGradientBrush>
                                        <GradientStop Color="#6BFFFFFF" Offset="0"/>
                                        <GradientStop Color="#6BFFFFFF" Offset="0.94"/>
                                        <GradientStop Offset="1"/>
                                    </RadialGradientBrush>
                                </Ellipse.Fill>
                            </Ellipse>
                            <ContentControl x:Name="ContentContainer" Content="{TemplateBinding Content}" VerticalAlignment="Top" Margin="9,9,9,0"/>
                        </Grid>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <Style x:Key="ButtonTitle" TargetType="Button">
		<Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>	
        <Setter Property="Width" Value="60"/>
        <Setter Property="MinHeight" Value="60"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderBrush" Value="White"/>
        <Setter Property="Foreground" Value="Black"/>
        <Setter Property="BorderThickness" Value="1"/>
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}" />
        <Setter Property="Padding" Value="0"/>
        <Setter Property="VerticalContentAlignment" Value="Top" />
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="Button">
                    <Grid Background="Transparent">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver"/>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneBackgroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneSubtleBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneForegroundBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Disabled">
                                    <Storyboard>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="BorderBrush" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
                                        </ObjectAnimationUsingKeyFrames>
                                        <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Background" Storyboard.TargetName="ButtonBackground">
                                            <DiscreteObjectKeyFrame KeyTime="0" Value="Transparent"/>
                                        </ObjectAnimationUsingKeyFrames>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Border x:Name="ButtonBackground" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" CornerRadius="0" >
                            <ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

	<Style x:Key="btnStyle" TargetType="Button"  BasedOn="{StaticResource PhoneButtonBase}">
        <Setter Property="FontSize" Value="{StaticResource PhoneFontSizeNormal}" />
		<Setter Property="FontWeight" Value="Normal" />
		<Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}" />
		<Setter Property="Padding" Value="4,0,0,4" />
		<Setter Property="HorizontalContentAlignment" Value="Left" />
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="ButtonBase">
					<Grid Background="{TemplateBinding Background}">
						<ContentControl Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}" Padding="{TemplateBinding Padding}" Content="{TemplateBinding Content}" />
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
    </Style>

	<Style x:Key="checkTitle" BasedOn="{StaticResource PhoneRadioButtonCheckBoxBase}" TargetType="CheckBox">
		<Setter Property="FontFamily" Value="{DynamicResource PhoneFontFamilyNormal}"/>	
		<Setter Property="FontSize" Value="{StaticResource PhoneFontSizeAppBar}"/>
		<Setter Property="Width" Value="60"/>
		<Setter Property="MinHeight" Value="50"/>
		<Setter Property="MaxHeight" Value="70"/>
		<Setter Property="VerticalContentAlignment" Value="Top"/>
		<Setter Property="Template">
			<Setter.Value>
				<ControlTemplate TargetType="CheckBox">
					<Grid Background="Transparent">
						<VisualStateManager.VisualStateGroups>
							<VisualStateGroup x:Name="CommonStates">
								<VisualState x:Name="Normal"/>
								<VisualState x:Name="MouseOver"/>
								<VisualState x:Name="Pressed">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="CheckMark">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckBrush}"/>
										</ObjectAnimationUsingKeyFrames>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="IndeterminateMark">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckBrush}"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
								<VisualState x:Name="Disabled">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="CheckMark">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckDisabledBrush}"/>
										</ObjectAnimationUsingKeyFrames>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Fill" Storyboard.TargetName="IndeterminateMark">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneRadioCheckBoxCheckDisabledBrush}"/>
										</ObjectAnimationUsingKeyFrames>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Foreground" Storyboard.TargetName="ContentContainer">
											<DiscreteObjectKeyFrame KeyTime="0" Value="{StaticResource PhoneDisabledBrush}"/>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
							</VisualStateGroup>
							<VisualStateGroup x:Name="CheckStates">
								<VisualState x:Name="Checked">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="CheckMark">
											<DiscreteObjectKeyFrame KeyTime="0">
												<DiscreteObjectKeyFrame.Value>
													<Visibility>Visible</Visibility>
												</DiscreteObjectKeyFrame.Value>
											</DiscreteObjectKeyFrame>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
								<VisualState x:Name="Unchecked"/>
								<VisualState x:Name="Indeterminate">
									<Storyboard>
										<ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visibility" Storyboard.TargetName="IndeterminateMark">
											<DiscreteObjectKeyFrame KeyTime="0">
												<DiscreteObjectKeyFrame.Value>
													<Visibility>Visible</Visibility>
												</DiscreteObjectKeyFrame.Value>
											</DiscreteObjectKeyFrame>
										</ObjectAnimationUsingKeyFrames>
									</Storyboard>
								</VisualState>
							</VisualStateGroup>
						</VisualStateManager.VisualStateGroups>
						<Grid>
							<Rectangle x:Name="IndeterminateMark" Fill="{StaticResource PhoneRadioCheckBoxCheckBrush}" IsHitTestVisible="False" Visibility="Collapsed" />
							<Rectangle x:Name="CheckMark" Fill="{StaticResource PhoneAccentBrush}" IsHitTestVisible="False" Visibility="Collapsed" />
							<ContentControl x:Name="ContentContainer" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" 
											Foreground="{TemplateBinding Foreground}" HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"  
											Padding="{TemplateBinding Padding}" VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"/>
						</Grid>
					</Grid>
				</ControlTemplate>
			</Setter.Value>
		</Setter>
	</Style>
	
</ResourceDictionary>
FanStyle.xaml (144,172 bytes)   
PlatformAny

Activities

nokola

nokola

2019-02-22 06:24

reporter   ~0005449

Code behind:
NoesisExtensions.LoadComponent(this, Globals.BaseUnityXamlPath + "/NewPaintingDialog.xaml");

        rectBack = (Rectangle) FindName("rectBack");
        imgConeBack = (Image) FindName("imgConeBack");
        mainPane = (StackPanel) FindName("mainPane");
        btnFillBlack = (RadioButton) FindName("btnFillBlack");
        btnFillWhite = (RadioButton) FindName("btnFillWhite");
        btnFillPastelRainbow = (RadioButton) FindName("btnFillPastelRainbow");
        btnFillRainbow = (RadioButton) FindName("btnFillRainbow");
        btnColor1 = (RadioButton) FindName("btnColor1");
        rectColor1 = (Rectangle) FindName("rectColor1");
        btnHoriz = (RadioButton) FindName("btnHoriz");
        rectHoriz = (Rectangle) FindName("rectHoriz");
        btnVert = (RadioButton) FindName("btnVert");
        rectVert = (Rectangle) FindName("rectVert");
        btnOk = (Button) FindName("btnOk");
        btnCancelNewPainting = (Button) FindName("btnCancelNewPainting");
        gradient1 = (SmallColorPicker) FindName("gradient1");
        gradient2 = (SmallColorPicker) FindName("gradient2");
sfernandez

sfernandez

2019-02-22 10:36

manager   ~0005450

I was able to reproduce the memory overflow with the following xaml:

<Grid
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

<TextBlock Margin="17,0" TextWrapping="Wrap" Height="27" FontSize="12" ><Run Text="Background"/><LineBreak/><Run/></TextBlock>

</Grid>


It is a problem when processing the text runs, could you @jsantos take a look?

jsantos

jsantos

2019-02-22 18:55

manager   ~0005451

Could you please try with the following patch? (you need to put Noesis.dll inside Assets\NoesisGUI\Plugins\Libraries\Windows\x86_64)

https://drive.google.com/open?id=12-lfBOFazE1mqPGzEbvIKjqqm2Ljv5BF

I have also provided a 'Debug' library if you want to try it. That library is going to be slower and if internal asserts are reached it will crash Unity, but I think it would be good to try it to find rare things.

Thanks a lot for your help!

nokola

nokola

2019-02-23 05:16

reporter   ~0005452

No crash! Seeing other issues - cannot find images - but will open separate bug

Issue History

Date Modified Username Field Change
2019-02-22 06:22 nokola New Issue
2019-02-22 06:22 nokola File Added: NewPaintingDialog.xaml
2019-02-22 06:22 nokola File Added: FanStyle.xaml
2019-02-22 06:24 nokola Note Added: 0005449
2019-02-22 10:35 sfernandez Assigned To => jsantos
2019-02-22 10:35 sfernandez Status new => assigned
2019-02-22 10:36 sfernandez Note Added: 0005450
2019-02-22 18:55 jsantos Note Added: 0005451
2019-02-22 18:55 jsantos Target Version => 2.2.0
2019-02-22 18:55 jsantos Steps to Reproduce Updated
2019-02-22 18:55 jsantos Status assigned => feedback
2019-02-23 05:16 nokola Note Added: 0005452
2019-02-23 05:16 nokola Status feedback => assigned
2019-02-23 12:01 admin Status assigned => resolved
2019-02-23 12:01 admin Resolution open => fixed
2019-02-23 12:01 admin Fixed in Version => 2.2.0b7
2019-02-24 01:38 nokola Status resolved => closed
2025-10-10 13:29 jsantos Category Unity3D => Unity