CurvedHeaderHomeScrollView.xaml 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205
  1. <UserControl xmlns="https://github.com/avaloniaui"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. x:Class="ControlCatalog.Pages.CurvedHeaderHomeScrollView">
  4. <ScrollViewer VerticalScrollBarVisibility="Auto">
  5. <StackPanel Spacing="0">
  6. <!-- Spacer for dome header + avatar overlap: 130 (flat) + 32 (dome) + 36 (avatar/2) + 16 = 214px -->
  7. <Border Height="214"/>
  8. <!-- Featured section -->
  9. <Grid ColumnDefinitions="*,Auto" Margin="16,16,16,12">
  10. <TextBlock Text="Featured" FontSize="18" FontWeight="Bold" Foreground="#111827"/>
  11. <TextBlock Grid.Column="1" Text="View All" FontSize="13" FontWeight="SemiBold"
  12. Foreground="#137fec" VerticalAlignment="Center"/>
  13. </Grid>
  14. <Border Margin="16,0" CornerRadius="16" ClipToBounds="True">
  15. <Panel>
  16. <Border Height="200">
  17. <Border.Background>
  18. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/featured.jpg"
  19. Stretch="UniformToFill"/>
  20. </Border.Background>
  21. </Border>
  22. <Border>
  23. <Border.Background>
  24. <LinearGradientBrush StartPoint="0%,30%" EndPoint="0%,100%">
  25. <GradientStop Color="#00000000" Offset="0"/>
  26. <GradientStop Color="#A0000000" Offset="1"/>
  27. </LinearGradientBrush>
  28. </Border.Background>
  29. </Border>
  30. <StackPanel VerticalAlignment="Bottom" HorizontalAlignment="Center"
  31. Margin="16,0,16,16" Spacing="4">
  32. <Border CornerRadius="999" Background="#137fec" Padding="10,3"
  33. HorizontalAlignment="Center">
  34. <TextBlock Text="NEW" FontSize="10" FontWeight="SemiBold" Foreground="White"/>
  35. </Border>
  36. <TextBlock Text="Summer Collection 2025" FontSize="18" FontWeight="Bold"
  37. Foreground="White" TextAlignment="Center"/>
  38. <TextBlock Text="Discover the latest trends in outdoor fashion."
  39. FontSize="13" Foreground="#D2FFFFFF"
  40. Margin="0,0,0,6" TextAlignment="Center"/>
  41. <Button x:Name="ShopNowButton"
  42. Content="Shop Now →"
  43. Background="#3CFFFFFF"
  44. Foreground="White"
  45. BorderBrush="#78FFFFFF" BorderThickness="1"
  46. CornerRadius="8" Height="40"
  47. Padding="24,0"
  48. HorizontalAlignment="Center"
  49. HorizontalContentAlignment="Center"
  50. VerticalContentAlignment="Center"
  51. Click="OnShopNowClick"/>
  52. </StackPanel>
  53. </Panel>
  54. </Border>
  55. <!-- Recommended for you -->
  56. <StackPanel Spacing="2" Margin="16,20,16,12">
  57. <TextBlock Text="Recommended for you" FontSize="18" FontWeight="Bold" Foreground="#111827"/>
  58. <TextBlock Text="Curated items based on your style" FontSize="13" Foreground="#64748b"/>
  59. </StackPanel>
  60. <ScrollViewer HorizontalScrollBarVisibility="Auto"
  61. VerticalScrollBarVisibility="Disabled"
  62. Padding="0,0,0,8">
  63. <StackPanel Orientation="Horizontal" Spacing="12" Margin="16,0">
  64. <!-- Modern Living -->
  65. <Button Padding="0" Background="Transparent" CornerRadius="12" Click="OnProductClick">
  66. <Border Width="148" CornerRadius="12" Background="White" ClipToBounds="True">
  67. <StackPanel Spacing="0">
  68. <Border Height="115">
  69. <Border.Background>
  70. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/product1.jpg"
  71. Stretch="UniformToFill"/>
  72. </Border.Background>
  73. </Border>
  74. <StackPanel Margin="10,8,10,12" Spacing="2">
  75. <TextBlock Text="Modern Living" FontSize="13" FontWeight="SemiBold" Foreground="#111827"/>
  76. <TextBlock Text="Interior Design" FontSize="11" Foreground="#64748b"/>
  77. <TextBlock Text="$120.00" FontSize="13" FontWeight="Bold" Foreground="#137fec" Margin="0,4,0,0"/>
  78. </StackPanel>
  79. </StackPanel>
  80. </Border>
  81. </Button>
  82. <!-- Workspace Zen -->
  83. <Button Padding="0" Background="Transparent" CornerRadius="12" Click="OnProductClick">
  84. <Border Width="148" CornerRadius="12" Background="White" ClipToBounds="True">
  85. <StackPanel Spacing="0">
  86. <Border Height="115">
  87. <Border.Background>
  88. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/product2.jpg"
  89. Stretch="UniformToFill"/>
  90. </Border.Background>
  91. </Border>
  92. <StackPanel Margin="10,8,10,12" Spacing="2">
  93. <TextBlock Text="Workspace Zen" FontSize="13" FontWeight="SemiBold" Foreground="#111827"/>
  94. <TextBlock Text="Productivity" FontSize="11" Foreground="#64748b"/>
  95. <TextBlock Text="$85.50" FontSize="13" FontWeight="Bold" Foreground="#137fec" Margin="0,4,0,0"/>
  96. </StackPanel>
  97. </StackPanel>
  98. </Border>
  99. </Button>
  100. <!-- Cozy Vibes -->
  101. <Button Padding="0" Background="Transparent" CornerRadius="12" Click="OnProductClick">
  102. <Border Width="148" CornerRadius="12" Background="White" ClipToBounds="True">
  103. <StackPanel Spacing="0">
  104. <Border Height="115">
  105. <Border.Background>
  106. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/product3.jpg"
  107. Stretch="UniformToFill"/>
  108. </Border.Background>
  109. </Border>
  110. <StackPanel Margin="10,8,10,12" Spacing="2">
  111. <TextBlock Text="Cozy Vibes" FontSize="13" FontWeight="SemiBold" Foreground="#111827"/>
  112. <TextBlock Text="Home Decor" FontSize="11" Foreground="#64748b"/>
  113. <TextBlock Text="$45.00" FontSize="13" FontWeight="Bold" Foreground="#137fec" Margin="0,4,0,0"/>
  114. </StackPanel>
  115. </StackPanel>
  116. </Border>
  117. </Button>
  118. </StackPanel>
  119. </ScrollViewer>
  120. <!-- Recent Updates -->
  121. <TextBlock Text="Recent Updates" FontSize="18" FontWeight="Bold" Foreground="#111827"
  122. Margin="16,20,16,12"/>
  123. <StackPanel Spacing="10" Margin="16,0">
  124. <!-- Order Shipped -->
  125. <Border CornerRadius="12" Background="White" Padding="14">
  126. <Grid ColumnDefinitions="Auto,*,Auto">
  127. <Border Width="52" Height="52" CornerRadius="10" ClipToBounds="True"
  128. Margin="0,0,12,0" VerticalAlignment="Center">
  129. <Border.Background>
  130. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/update1.jpg"
  131. Stretch="UniformToFill"/>
  132. </Border.Background>
  133. </Border>
  134. <StackPanel Grid.Column="1" VerticalAlignment="Center" Spacing="1">
  135. <TextBlock Text="Order #2458 Shipped" FontSize="14" FontWeight="SemiBold" Foreground="#111827"/>
  136. <TextBlock Text="Your package is on its way." FontSize="12" Foreground="#64748b"/>
  137. <StackPanel Orientation="Horizontal" Spacing="5" Margin="0,4,0,0">
  138. <Ellipse Width="7" Height="7" Fill="#22C55E" VerticalAlignment="Center"/>
  139. <TextBlock Text="In Transit" FontSize="11" FontWeight="SemiBold" Foreground="#64748b" VerticalAlignment="Center"/>
  140. </StackPanel>
  141. </StackPanel>
  142. <TextBlock Grid.Column="2" Text="›" FontSize="22" Foreground="#64748b" VerticalAlignment="Center"/>
  143. </Grid>
  144. </Border>
  145. <!-- Price Drop -->
  146. <Border CornerRadius="12" Background="White" Padding="14">
  147. <Grid ColumnDefinitions="Auto,*,Auto">
  148. <Border Width="52" Height="52" CornerRadius="10" ClipToBounds="True"
  149. Margin="0,0,12,0" VerticalAlignment="Center">
  150. <Border.Background>
  151. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/update2.jpg"
  152. Stretch="UniformToFill"/>
  153. </Border.Background>
  154. </Border>
  155. <StackPanel Grid.Column="1" VerticalAlignment="Center" Spacing="1">
  156. <TextBlock Text="Price Drop Alert" FontSize="14" FontWeight="SemiBold" Foreground="#111827"/>
  157. <TextBlock Text="The chair you liked is 20% off." FontSize="12" Foreground="#64748b"/>
  158. <StackPanel Orientation="Horizontal" Spacing="5" Margin="0,4,0,0">
  159. <Ellipse Width="7" Height="7" Fill="#137fec" VerticalAlignment="Center"/>
  160. <TextBlock Text="Just Now" FontSize="11" FontWeight="SemiBold" Foreground="#64748b" VerticalAlignment="Center"/>
  161. </StackPanel>
  162. </StackPanel>
  163. <TextBlock Grid.Column="2" Text="›" FontSize="22" Foreground="#64748b" VerticalAlignment="Center"/>
  164. </Grid>
  165. </Border>
  166. <!-- New Store -->
  167. <Border CornerRadius="12" Background="White" Padding="14">
  168. <Grid ColumnDefinitions="Auto,*,Auto">
  169. <Border Width="52" Height="52" CornerRadius="10" ClipToBounds="True"
  170. Margin="0,0,12,0" VerticalAlignment="Center">
  171. <Border.Background>
  172. <ImageBrush Source="avares://ControlCatalog/Assets/CurvedHeader/update3.jpg"
  173. Stretch="UniformToFill"/>
  174. </Border.Background>
  175. </Border>
  176. <StackPanel Grid.Column="1" VerticalAlignment="Center" Spacing="1">
  177. <TextBlock Text="New Store Opening" FontSize="14" FontWeight="SemiBold" Foreground="#111827"/>
  178. <TextBlock Text="Visit our new downtown location." FontSize="12" Foreground="#64748b"/>
  179. <StackPanel Orientation="Horizontal" Spacing="5" Margin="0,4,0,0">
  180. <Ellipse Width="7" Height="7" Fill="#93C5FD" VerticalAlignment="Center"/>
  181. <TextBlock Text="Events" FontSize="11" FontWeight="SemiBold" Foreground="#64748b" VerticalAlignment="Center"/>
  182. </StackPanel>
  183. </StackPanel>
  184. <TextBlock Grid.Column="2" Text="›" FontSize="22" Foreground="#64748b" VerticalAlignment="Center"/>
  185. </Grid>
  186. </Border>
  187. </StackPanel>
  188. <Border Height="24"/>
  189. </StackPanel>
  190. </ScrollViewer>
  191. </UserControl>