<Style TargetType="{x:Type igw:CarouselListBoxItem}">
<Style.BasedOn>
<Style TargetType="{x:Type igw:CarouselPanelItem}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type igw:CarouselPanelItem}">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<ScrollViewer x:Name="ScrollViewer" HorizontalScrollBarVisibility="{TemplateBinding ItemHorizontalScrollBarVisibility}"
VerticalScrollBarVisibility="{TemplateBinding ItemVerticalScrollBarVisibility}">
<Viewbox HorizontalAlignment="Center" x:Name="ViewBox" VerticalAlignment="Bottom">
<Grid x:Name="itemContentHolder">
<Border x:Name="itemContentHolderBackground" Background="#000FF000" CornerRadius="4,4,4,4"
BorderBrush="Tomato" BorderThickness="10"/>
<ContentControl Margin="0,0,0,0" x:Name="itemContent" Content="{TemplateBinding Content}"
ContentTemplate="{TemplateBinding ContentTemplate}"/>
</Grid>
</Viewbox>
</ScrollViewer>
<Canvas IsHitTestVisible=" Visibility={RelativeSource FindAncestor, AncestorLevel=1, AncestorType={x:Type igw:XamCarouselPanel}
Margin="0,2,0,0" Width="{Binding Path=ActualWidth, ElementName=ScrollViewer}" Height="{Binding Path=ActualHeight,
ElementName=ScrollViewer}" Grid.Row="1">
<Canvas.OpacityMask>
<LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
<GradientStop Color="#FF000000" Offset="0"/>
<GradientStop Color="#00000000" Offset="0.8"/>
</LinearGradientBrush>
</Canvas.OpacityMask>
<Canvas.Background>
<VisualBrush Opacity="0.3" AlignmentX="Center" AlignmentY="Bottom" Stretch="None"
Visual="{Binding ElementName=ScrollViewer}">
<VisualBrush.RelativeTransform>
<TransformGroup>
<MatrixTransform Matrix="1,0,0,-1,0,0"/>
<TranslateTransform Y="1"/>
</TransformGroup>
</VisualBrush.RelativeTransform>
</VisualBrush>
</Canvas.Background>
</Canvas>
</Grid>
<ControlTemplate.Triggers>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsFirstItem" Value="True"/>
<Condition Property="IsListContinuous" Value="True"/>
</MultiTrigger.Conditions>
<Setter Property="BorderThickness" TargetName="itemContentHolderBackground" Value="4,4,4,4"/>
<Setter Property="BorderBrush" TargetName="itemContentHolderBackground" Value="#00FFFFFF"/>
<Setter Property="Margin" TargetName="itemContent" Value="4,4,4,4"/>
</MultiTrigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsLastItem" Value="True"/>
<Condition Property="IsListContinuous" Value="True"/>
</MultiTrigger.Conditions>
<Setter Property="BorderThickness" TargetName="itemContentHolderBackground" Value="4,4,4,4"/>
<Setter Property="BorderBrush" TargetName="itemContentHolderBackground" Value="#00FFFFFF"/>
<Setter Property="Margin" TargetName="itemContent" Value="4,4,4,4"/>
</MultiTrigger>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Background" TargetName="itemContentHolderBackground">
<Setter.Value>
<LinearGradientBrush EndPoint="0,1" StartPoint="0,0">
<GradientStop Color="sc#1, 0.303573549, 0.303573549, 0.303573549" Offset="1"/>
<GradientStop Color="sc#1, 0.9095203, 0.9095203, 0.9095203" Offset="0"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
<Setter Property="Margin" TargetName="itemContent" Value="4,4,4,4"/>
</Trigger>
<Trigger Property="AutoScaleItemContentsToFit" Value="True">
<Setter Property="HorizontalScrollBarVisibility" TargetName="ScrollViewer" Value="Hidden"/>
<Setter Property="VerticalScrollBarVisibility" TargetName="ScrollViewer" Value="Hidden"/>
<Setter Property="Stretch" TargetName="ViewBox" Value="Uniform"/>
<Setter Property="StretchDirection" TargetName="ViewBox" Value="Both"/>
<Setter Property="Width" TargetName="ViewBox" Value={x:Type ScrollContentPresenter}/>
<Setter Property="Height" TargetName="ViewBox" Value={x:Type ScrollContentPresenter}/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Style.BasedOn>
</Style>