Facebook
From Tinct Panda, 1 Year ago, written in XML.
Embed
Download Paste or View Raw
Hits: 99
  1. <UserControl  x:Class="IceCreamKiosk.Controls.IceCreamDetailsControl"
  2.             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3.             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4.             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5.             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6.             xmlns:local="clr-namespace:IceCreamKiosk.Controls"
  7.             xmlns:converters="clr-namespace:IceCreamKiosk.Converters"
  8.        xmlns:m="clr-namespace:Microsoft.Maps.MapControl.WPF;assembly=Microsoft.Maps.MapControl.WPF"
  9.             xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  10.    DataContext="{Binding Source={StaticResource Locator}, Path=IceCreamDetails}"
  11.    mc:Ignorable="d"
  12.             d:DesignHeight="5480" d:DesignWidth="1100">
  13.     <Grid>
  14.         <materialDesign:DialogHost BorderBrush="{DynamicResource MaterialDesignDivider}">
  15.             <materialDesign:DialogHost.DialogContent >
  16.                 <Grid  HorizontalAlignment="Center">
  17.                     <StackPanel  Margin="15">
  18.                         <Image Grid.Column="0" Width="150" Height="150" Margin="2" Source="{Binding QrImage}"></Image>
  19.                         <TextBlock Foreground="Gray" Width="200" Margin="15 5" HorizontalAlignment="Center" TextWrapping="Wrap">
  20.                           scan to your phone
  21.                         </TextBlock>
  22.                         <Button Command="{x:Static materialDesign:DialogHost.CloseDialogCommand}" Style="{DynamicResource MaterialDesignFlatButton}" Margin="4" VerticalAlignment="Center">
  23.                             accept
  24.                         </Button>
  25.                     </StackPanel>
  26.                 </Grid>
  27.             </materialDesign:DialogHost.DialogContent>
  28.             <Grid>
  29.                 <Grid.Resources>
  30.                     <converters:SocailMediaUrlToIconConverter x:Key="SocailMediaUrlToIcon"/>
  31.                 </Grid.Resources>
  32.                 <Grid.ColumnDefinitions>
  33.                     <ColumnDefinition/>
  34.                     <ColumnDefinition/>
  35.                 </Grid.ColumnDefinitions>
  36.                 <materialDesign:TransitioningContent Margin=" 0 0 30 0"  OpeningEffect="{materialDesign:TransitionEffect SlideInFromLeft, Duration=0:0:1.2}">
  37.  
  38.                         <StackPanel>
  39.                             <GroupBox Header="Ice cream details" Grid.Column="1" Height="300" Width="420" Style="{DynamicResource MaterialDesignCardGroupBox}">
  40.                                 <GroupBox.HeaderTemplate>
  41.                                     <DataTemplate>
  42.                                         <DockPanel LastChildFill="False" >
  43.                                             <TextBlock Style="{StaticResource MaterialDesignHeadlineTextBlock}" DockPanel.Dock="Left" Margin="0,0,10,0" VerticalAlignment="Center" FontWeight="Bold" Text="{Binding}" />
  44.                                             <materialDesign:PackIcon DockPanel.Dock="Right" Kind="IceCream" Height="32"  Width="32"  VerticalAlignment="Center" />
  45.                                         </DockPanel>
  46.                                     </DataTemplate>
  47.                                 </GroupBox.HeaderTemplate>
  48.                                 <Grid>
  49.                                     <Grid.ColumnDefinitions>
  50.                                         <ColumnDefinition/>
  51.                                         <ColumnDefinition Width="auto"/>
  52.                                     </Grid.ColumnDefinitions>
  53.                                     <DockPanel>
  54.                                         <TextBlock TextWrapping="Wrap" DockPanel.Dock="Top" Style="{StaticResource MaterialDesignTitleTextBlock}"
  55.                                  Text="{Binding IceCream.Description}" VerticalAlignment="Top"/>
  56.  
  57.                                     </DockPanel>
  58.                                     <StackPanel Grid.Column="1">
  59.                                         <Image    Height="180" Width="180" Margin="5"  Stretch="UniformToFill" ToolTip="{Binding IceCream.Name}" >
  60.                                             <Image.Source>
  61.                                                 <Binding Path="IceCream.Image" >
  62.                                                     <Binding.TargetNullValue>
  63.                                                         <ImageSource>pack://application:,,,/Assets/no-image-icon.png</ImageSource>
  64.                                                     </Binding.TargetNullValue>
  65.                                                 </Binding>
  66.                                             </Image.Source>
  67.                                         </Image>
  68.                                         <materialDesign:Badged HorizontalAlignment="Center" Margin="0 10 0 0" Badge="{materialDesign:PackIcon STAR}" BadgeColorZoneMode="Light" >
  69.                                             <Button Content="RATE ME"  Style="{StaticResource MaterialDesignRaisedAccentButton}" BorderBrush="Gold" Background="Gold" Command="{Binding RateCommand}"/>
  70.                                         </materialDesign:Badged>
  71.                                     </StackPanel>
  72.                                 </Grid>
  73.                             </GroupBox>
  74.                            
  75.                                 <Expander x:Name="NutriExpender" HorizontalAlignment="Stretch"  IsExpanded="False"  >
  76.                                
  77.                                 <Expander.Style>
  78.                                     <Style TargetType="{x:Type Expander}" BasedOn="{StaticResource MaterialDesignExpander}">
  79.                                         <Style.Triggers>
  80.                                             <DataTrigger Binding="{Binding ElementName=ReviewExpender, Path=IsExpanded}" Value="True">
  81.                                                 <Setter Property="IsExpanded" Value="False"/>
  82.                                             </DataTrigger>
  83.                                         </Style.Triggers>
  84.                                     </Style>
  85.                                 </Expander.Style>
  86.                                 <Expander.Header >
  87.                                     <DockPanel  LastChildFill="False">
  88.                                         <TextBlock  DockPanel.Dock="Right"  VerticalAlignment="Center" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Text="Nutrients per 100g" />
  89.                                         <materialDesign:PackIcon   DockPanel.Dock="Left" Kind="TagTextOutline" Height="32"  Width="32"  VerticalAlignment="Center" />
  90.                                     </DockPanel>
  91.                                 </Expander.Header>
  92.                                 <ScrollViewer MaxHeight="120">
  93.  
  94.                                     <StackPanel Width="300">
  95.                                         <DockPanel Margin="0 10" LastChildFill="False">
  96.                                             <TextBlock DockPanel.Dock="Left"  Text="Energy"/>
  97.                                             <TextBlock  DockPanel.Dock="Right"  Text="kcal"/>
  98.                                             <TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Energy}"/>
  99.                                         </DockPanel>
  100.  
  101.                                         <DockPanel Margin="0 10" LastChildFill="False">
  102.                                             <TextBlock DockPanel.Dock="Left"  Text="Carbohydrate"/>
  103.                                             <TextBlock DockPanel.Dock="Right"   Text="g"/>
  104.                                             <TextBlock Margin="5 0" DockPanel.Dock="Right"   Text="{Binding IceCream.Nutrients.Carbohydrate}"/>
  105.                                         </DockPanel>
  106.  
  107.                                         <DockPanel Margin="0 10" LastChildFill="False">
  108.                                             <TextBlock DockPanel.Dock="Left" Text="TotalFat"/>
  109.                                             <TextBlock DockPanel.Dock="Right" Text="g"/>
  110.                                             <TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.TotalFat}"/>
  111.                                         </DockPanel>
  112.  
  113.                                         <DockPanel Margin="0 10" LastChildFill="False">
  114.                                             <TextBlock DockPanel.Dock="Left" Text="Cholesterol"/>
  115.                                             <TextBlock DockPanel.Dock="Right" Text="mg"/>
  116.                                             <TextBlock DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Cholesterol}"/>
  117.                                         </DockPanel>
  118.  
  119.                                         <DockPanel Margin="0 10" LastChildFill="False">
  120.                                             <TextBlock  DockPanel.Dock="Left" Text="Sugars"/>
  121.                                             <TextBlock  DockPanel.Dock="Right"  Text="g"/>
  122.                                             <TextBlock  DockPanel.Dock="Right" Margin="5 0"  Text="{Binding IceCream.Nutrients.Sugars}"/>
  123.                                         </DockPanel>
  124.  
  125.                                         <DockPanel Margin="0 10" LastChildFill="False">
  126.                                             <TextBlock DockPanel.Dock="Left" Text="Protein"/>
  127.                                             <TextBlock   DockPanel.Dock="Right"  Text="g"/>
  128.                                             <TextBlock  DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Protein}"/>
  129.                                         </DockPanel>
  130.  
  131.                                         <DockPanel Margin="0 10" LastChildFill="False">
  132.                                             <TextBlock  DockPanel.Dock="Left" Text="Fiber"/>
  133.                                             <TextBlock  DockPanel.Dock="Right"  Text="g"/>
  134.                                             <TextBlock  DockPanel.Dock="Right" Margin="5 0" Text="{Binding IceCream.Nutrients.Fiber}"/>
  135.                                         </DockPanel>
  136.  
  137.                                     </StackPanel>
  138.                            </ScrollViewer>
  139.                                  </Expander>
  140.                            
  141.                                 <Expander x:Name="ReviewExpender" IsExpanded="False" HorizontalAlignment="Stretch" >
  142.                                 <Expander.Style>
  143.                                     <Style TargetType="{x:Type Expander}" BasedOn="{StaticResource MaterialDesignExpander}">
  144.                                         <Style.Triggers>
  145.                                             <DataTrigger Binding="{Binding ElementName=NutriExpender, Path=IsExpanded}" Value="False">
  146.                                                 <Setter Property="IsExpanded" Value="True"/>
  147.                                             </DataTrigger>
  148.                                         </Style.Triggers>
  149.                                     </Style>
  150.                                 </Expander.Style>
  151.                                 <Expander.Header>
  152.                                     <DockPanel LastChildFill="False" >
  153.                                         <TextBlock  DockPanel.Dock="Right"  VerticalAlignment="Center" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Text="Reviews" />
  154.                                         <materialDesign:RatingBar Foreground="#fdd835" Background="#fdd835" Value="{Binding IceCream.Rate}" IsReadOnly="True" x:Name="ReadOnlyRatingBar" />
  155.                                         <TextBlock DockPanel.Dock="Left" Text="{Binding IceCream.Rate, StringFormat=N2}" Margin="10 0 0 0" VerticalAlignment="Center" />
  156.                                     </DockPanel>
  157.                                 </Expander.Header>
  158.                                 <ScrollViewer MaxHeight="150">
  159.  
  160.                                     <ListBox Focusable="False" ItemsSource="{Binding IceCream.Reviews}" >
  161.                                        
  162.                                         <ListBox.ItemTemplate>
  163.                                             <DataTemplate>
  164.                                                 <materialDesign:Card  Height="90" Margin="5" Padding="4"
  165.                                                        
  166.                                                         materialDesign:ShadowAssist.ShadowDepth="Depth1" Background="#FFC3FFC3" >
  167.  
  168.                                                     <StackPanel Orientation="Horizontal">
  169.                                                         <materialDesign:RatingBar Foreground="#fdd835"  Value="{Binding Rate}" IsReadOnly="True" x:Name="ReadOnlyRatingBar" />
  170.  
  171.                                                         <TextBlock  TextWrapping="Wrap"  Margin="20 10"  Text="{Binding Message, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" TextAlignment="Center"/>
  172.                                                         <Image Margin="2" Grid.Column="2"  Source="{Binding Image}" Height="45" Width="45"/>
  173.                                                     </StackPanel>
  174.                                                 </materialDesign:Card>
  175.                                             </DataTemplate>
  176.                                         </ListBox.ItemTemplate>
  177.                                     </ListBox>
  178.                           </ScrollViewer>
  179.                             </Expander>
  180.  
  181.                         </StackPanel>
  182.  
  183.                 </materialDesign:TransitioningContent>
  184.  
  185.                 <materialDesign:TransitioningContent Margin="80 0 20 0" Grid.Column="1" OpeningEffect="{materialDesign:TransitionEffect SlideInFromRight, Duration=0:0:1.2}">
  186.                     <materialDesign:Card     MaxWidth="600" >
  187.                         <GroupBox Height="600" VerticalAlignment="Top" Grid.Column="1" Header="{Binding IceCream.Shop.Name}" Style="{DynamicResource MaterialDesignGroupBox}">
  188.                             <GroupBox.HeaderTemplate>
  189.                                 <DataTemplate>
  190.                                     <DockPanel LastChildFill="False" >
  191.                                         <TextBlock Style="{StaticResource MaterialDesignHeadlineTextBlock}" DockPanel.Dock="Left" Margin="0" VerticalAlignment="Center" FontWeight="Bold" Text="{Binding}" />
  192.                                         <materialDesign:PackIcon DockPanel.Dock="Right" Kind="Store" Height="32"  Width="32"  VerticalAlignment="Center" />
  193.                                     </DockPanel>
  194.                                 </DataTemplate>
  195.                             </GroupBox.HeaderTemplate>
  196.                             <Grid>
  197.                                 <Grid.RowDefinitions>
  198.                                     <RowDefinition Height="auto"/>
  199.                                     <RowDefinition Height="auto"/>
  200.                                 </Grid.RowDefinitions>
  201.                                 <Grid >
  202.                                     <Grid.ColumnDefinitions>
  203.                                         <ColumnDefinition/>
  204.                                         <ColumnDefinition/>
  205.                                     </Grid.ColumnDefinitions>
  206.                                     <Image Grid.Column="1" Margin="2" Height="180" >
  207.                                         <Image.Source>
  208.                                             <Binding Path="IceCream.Shop.Image" >
  209.                                                 <Binding.TargetNullValue>
  210.                                                     <ImageSource >pack://application:,,,/Assets/no-image-icon.png</ImageSource>
  211.                                                 </Binding.TargetNullValue>
  212.                                             </Binding>
  213.                                         </Image.Source>
  214.                                     </Image>
  215.                                     <StackPanel Grid.Column="0" Margin="5" >
  216.  
  217.                                         <StackPanel Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" >
  218.                                             <materialDesign:PackIcon VerticalAlignment="Center" Kind="PhoneClassic" />
  219.                                             <TextBlock  Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0"  Text="{Binding IceCream.Shop.PhoneNumber}"/>
  220.                                         </StackPanel>
  221.                                         <StackPanel Margin="0 7" VerticalAlignment="Center"  Orientation="Horizontal" >
  222.                                             <materialDesign:PackIcon VerticalAlignment="Center" Kind="HouseMapMarker" />
  223.                                             <TextBlock x:Name="shopAddress" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0"  Text="{Binding IceCream.Shop.Address}"/>
  224.                                         </StackPanel>
  225.                                         <StackPanel Margin="0 7" VerticalAlignment="Center"  Orientation="Horizontal" Hyperlink.Click="WebSiteLink_Click" >
  226.                                             <Button Height="24" Width="24" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="Website">
  227.                                                 <materialDesign:PackIcon Kind="Web"  />
  228.                                             </Button>
  229.                                             <TextBlock Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0"  Text="{Binding IceCream.Shop.WebSiteLink}" />
  230.                                         </StackPanel>
  231.                                         <StackPanel Margin="0 7" VerticalAlignment="Center"  Orientation="Horizontal" Hyperlink.Click="socialwebLink_Click" >
  232.                                             <Button  Height="24" Width="24" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="MaterialDesignFloatingActionMiniAccentButton">
  233.                                                 <materialDesign:PackIcon VerticalAlignment="Center" Kind="{Binding IceCream.Shop.SocialMediaLink, Converter={StaticResource SocailMediaUrlToIcon}}" />
  234.                                             </Button>
  235.                                             <TextBlock x:Name="SocailMediaLink" Style="{StaticResource MaterialDesignSubheadingTextBlock}" Margin="5 0 5 0"  Text="{Binding IceCream.Shop.SocialMediaLink}" />
  236.                                         </StackPanel>
  237.                                         <StackPanel  Margin="0 7" VerticalAlignment="Center" Orientation="Horizontal" >
  238.                                             <Button  Margin="30 0" Height="30" Width="30" x:Name="wazeButton"  Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="WAZE"  Click="wazeButton_Click">
  239.                                                 <Image  Source="waze.png" />
  240.                                             </Button>
  241.                                             <Button Height="30" Width="30"  Command="{x:Static materialDesign:DialogHost.OpenDialogCommand}" Style="{StaticResource MaterialDesignFloatingActionMiniAccentButton}" ToolTip="RQ Map" >
  242.                                                 <materialDesign:PackIcon VerticalAlignment="Center" Kind="QrcodeScan" />
  243.                                             </Button>
  244.  
  245.                                         </StackPanel>
  246.                                     </StackPanel>
  247.                                 </Grid>
  248.                                 <Grid Grid.Row="1">
  249.                                     <m:Map x:Name="Map" Margin="0 2 0 0" Height="300" ZoomLevel="16"  HorizontalAlignment="Stretch"  VerticalAlignment="Stretch"
  250.                           CredentialsProvider="{Binding BingMapsKey}" ScaleVisibility="Collapsed" >
  251.                                         <m:Map.Resources>
  252.                                             <Style TargetType="m:Pushpin" x:Key="LabelPushpinStyle">
  253.                                                 <Setter Property="OverridesDefaultStyle" Value="true" />
  254.                                                 <Setter Property="PositionOrigin" Value="Center" />
  255.                                                 <Setter Property="Background" Value="Transparent" />
  256.                                                 <Setter Property="BorderBrush" Value="Transparent" />
  257.                                                 <Setter Property="BorderThickness" Value="0" />
  258.                                             </Style>
  259.  
  260.                                         </m:Map.Resources>
  261.                                         <m:MapItemsControl ItemsSource="{Binding Route , Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}" />
  262.                                         <m:MapItemsControl ItemsSource="{Binding Locations}">
  263.                                             <m:MapItemsControl.ItemTemplate>
  264.                                                 <DataTemplate>
  265.                                                     <m:Pushpin Location="{Binding BingLocation }" Content="{Binding Address}"  Style="{StaticResource LabelPushpinStyle}">
  266.                                                         <m:Pushpin.Template>
  267.                                                             <ControlTemplate >
  268.                                                                 <Canvas >
  269.                                                                     <Border Canvas.Left="30" Canvas.Top="-20" Width="100" Height="52"
  270.                                            Background="WhiteSmoke" Opacity="1" >
  271.                                                                         <Border.Effect>
  272.                                                                             <DropShadowEffect Color="LightGray" />
  273.                                                                         </Border.Effect>
  274.                                                                         <StackPanel VerticalAlignment="Center" HorizontalAlignment="Center">
  275.                                                                             <TextBlock Margin="4 0" Text="{Binding Name}" FontSize="12" />
  276.                                                                             <TextBlock Margin="4 0" TextWrapping="Wrap" Text="{Binding Address}" FontSize="12" />
  277.                                                                         </StackPanel>
  278.                                                                     </Border>
  279.  
  280.                                                                     <Path Data="M0,0 30,-12 30,-20 130,-20 130,32 30,32 30,-20" StrokeThickness="2" Stroke="DimGray" />
  281.                                                                     <Ellipse Canvas.Top="-4" Canvas.Left="-4" Width="8" Height="8" Fill="DarkOrange" Stroke="DimGray" />
  282.                                                                 </Canvas>
  283.                                                             </ControlTemplate>
  284.                                                         </m:Pushpin.Template>
  285.                                                     </m:Pushpin>
  286.                                                 </DataTemplate>
  287.                                             </m:MapItemsControl.ItemTemplate>
  288.                                         </m:MapItemsControl>
  289.  
  290.                                     </m:Map>
  291.                                     <DockPanel LastChildFill="False" HorizontalAlignment="Stretch">
  292.                                         <StackPanel DockPanel.Dock="Left" Margin="0 2 0 0" Background="#bbdefb" VerticalAlignment="Top" HorizontalAlignment="Left" Orientation="Horizontal" >
  293.                                             <RadioButton Command="{Binding FindWalkRoute}" Style="{StaticResource MaterialDesignTabRadioButton}" Margin="4" IsChecked="True">
  294.                                                 <materialDesign:PackIcon  Kind="Walk" />
  295.                                             </RadioButton>
  296.                                             <RadioButton Command="{Binding FindCarRoute}" Style="{StaticResource MaterialDesignTabRadioButton}" Margin="4" IsChecked="False" >
  297.                                                 <materialDesign:PackIcon  Kind="CarBack" />
  298.                                             </RadioButton>
  299.  
  300.                                         </StackPanel>
  301.                                     </DockPanel>
  302.  
  303.                                 </Grid>
  304.                             </Grid>
  305.                         </GroupBox>
  306.                     </materialDesign:Card>
  307.                 </materialDesign:TransitioningContent>
  308.                 <Button Grid.Row="1" Command="{x:Static materialDesign:Transitioner.MovePreviousCommand}"
  309.                    HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="-200 0 0 0" Style="{StaticResource MaterialDesignFloatingActionLightButton}">
  310.                     <materialDesign:PackIcon Kind="StepBackward" Height="24" Width="24" />
  311.                 </Button>
  312.                 <!--<Button Grid.Row="1" FontSize="45" Width="76" Height="76" Command="{x:Static materialDesign:Transitioner.MoveFirstCommand}"
  313.                HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="38 45 45 120"
  314.                Style="{StaticResource MaterialDesignFloatingActionAccentButton}">
  315.                                 <materialDesign:PackIcon Kind="Home" Height="36" Width="36" />
  316.                         </Button>-->
  317.             </Grid>
  318.         </materialDesign:DialogHost>
  319.     </Grid>
  320. </UserControl>
  321.