csharpc-sharpdotnetxamlavaloniauicross-platformcross-platform-xamlavaloniaguimulti-platformuser-interfacedotnetcore
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
75 lines
4.9 KiB
75 lines
4.9 KiB
<UserControl xmlns="https://github.com/avaloniaui"
|
|
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
|
x:Class="ControlCatalog.Pages.CommandBarDynamicOverflowPage">
|
|
<UserControl.Resources>
|
|
<StreamGeometry x:Key="AddIcon">M19,13H13V19H11V13H5V11H11V5H13V11H19V13Z</StreamGeometry>
|
|
<StreamGeometry x:Key="SaveIcon">M15,9H5V5H15M12,19A3,3 0 0,1 9,16A3,3 0 0,1 12,13A3,3 0 0,1 15,16A3,3 0 0,1 12,19M17,3H5C3.89,3 3,3.9 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V7L17,3Z</StreamGeometry>
|
|
<StreamGeometry x:Key="ShareIcon">M18,16.08C17.24,16.08 16.56,16.38 16.04,16.85L8.91,12.7C8.96,12.47 9,12.24 9,12C9,11.76 8.96,11.53 8.91,11.3L15.96,7.19C16.5,7.69 17.21,8 18,8A3,3 0 0,0 21,5A3,3 0 0,0 18,2A3,3 0 0,0 15,5C15,5.24 15.04,5.47 15.09,5.7L8.04,9.81C7.5,9.31 6.79,9 6,9A3,3 0 0,0 3,12A3,3 0 0,0 6,15C6.79,15 7.5,14.69 8.04,14.19L15.16,18.34C15.11,18.55 15.08,18.77 15.08,19C15.08,20.61 16.39,21.91 18,21.91C19.61,21.91 20.92,20.61 20.92,19C20.92,17.39 19.61,16.08 18,16.08Z</StreamGeometry>
|
|
<StreamGeometry x:Key="BoldIcon">M15.6,10.79C17.04,10.07 18,8.64 18,7C18,4.79 16.21,3 14,3H7V21H14.73C16.78,21 18.5,19.37 18.5,17.32C18.5,15.82 17.72,14.53 16.5,13.77C16.2,13.59 15.9,13.44 15.6,13.32V10.79M10,6.5H13C13.83,6.5 14.5,7.17 14.5,8C14.5,8.83 13.83,9.5 13,9.5H10V6.5M13.5,17.5H10V14H13.5C14.33,14 15,14.67 15,15.5C15,16.33 14.33,17.5 13.5,17.5Z</StreamGeometry>
|
|
<StreamGeometry x:Key="ItalicIcon">M10,4V7H12.21L8.79,15H6V18H14V15H11.79L15.21,7H18V4H10Z</StreamGeometry>
|
|
<StreamGeometry x:Key="DeleteIcon">M19,4H15.5L14.5,3H9.5L8.5,4H5V6H19M6,19A2,2 0 0,0 8,21H16A2,2 0 0,0 18,19V7H6V19Z</StreamGeometry>
|
|
</UserControl.Resources>
|
|
|
|
<DockPanel>
|
|
<ScrollViewer DockPanel.Dock="Right" Width="260">
|
|
<StackPanel Margin="12" Spacing="8">
|
|
<TextBlock Text="Configuration" FontWeight="SemiBold" FontSize="16"
|
|
Foreground="{DynamicResource SystemControlHighlightAccentBrush}" />
|
|
<TextBlock Text="Container Width" FontWeight="SemiBold" />
|
|
<Slider x:Name="WidthSlider"
|
|
Minimum="120"
|
|
Maximum="700"
|
|
Value="400"
|
|
ValueChanged="OnWidthChanged" />
|
|
<TextBlock x:Name="WidthLabel"
|
|
Text="400"
|
|
HorizontalAlignment="Center"
|
|
Opacity="0.7" />
|
|
|
|
<Separator />
|
|
|
|
<CheckBox x:Name="DynamicOverflowCheck"
|
|
Content="IsDynamicOverflowEnabled"
|
|
IsChecked="True"
|
|
IsCheckedChanged="OnDynamicOverflowChanged" />
|
|
|
|
<Separator />
|
|
|
|
<TextBlock Text="Overflow Priority" FontWeight="SemiBold" />
|
|
<TextBlock Text="DynamicOverflowOrder priority (lower = stays visible longer):"
|
|
FontSize="12" Opacity="0.7" TextWrapping="Wrap" />
|
|
<TextBlock Text="0: New, Save (always shown last to overflow)" FontSize="11" Opacity="0.7" />
|
|
<TextBlock Text="1: Share" FontSize="11" Opacity="0.7" />
|
|
<TextBlock Text="2: Bold, Italic" FontSize="11" Opacity="0.7" />
|
|
<TextBlock Text="3: Delete (overflows first)" FontSize="11" Opacity="0.7" />
|
|
</StackPanel>
|
|
</ScrollViewer>
|
|
|
|
<Border DockPanel.Dock="Right" Width="1" Background="{DynamicResource SystemControlForegroundBaseMediumLowBrush}" />
|
|
|
|
<StackPanel Margin="12" Spacing="8">
|
|
<TextBlock x:Name="StatusText"
|
|
Text="Showing 6 of 6 commands, 0 in overflow"
|
|
FontSize="12"
|
|
Opacity="0.7" />
|
|
<Border x:Name="BarContainer"
|
|
Width="400"
|
|
HorizontalAlignment="Left"
|
|
BorderBrush="{DynamicResource SystemControlForegroundBaseMediumLowBrush}"
|
|
BorderThickness="1"
|
|
CornerRadius="4"
|
|
ClipToBounds="True">
|
|
<CommandBar x:Name="DemoBar" IsDynamicOverflowEnabled="True">
|
|
<CommandBar.PrimaryCommands>
|
|
<AppBarButton Label="New" DynamicOverflowOrder="0"><AppBarButton.Icon><PathIcon Data="{StaticResource AddIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
<AppBarButton Label="Save" DynamicOverflowOrder="0"><AppBarButton.Icon><PathIcon Data="{StaticResource SaveIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
<AppBarButton Label="Share" DynamicOverflowOrder="1"><AppBarButton.Icon><PathIcon Data="{StaticResource ShareIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
<AppBarButton Label="Bold" DynamicOverflowOrder="2"><AppBarButton.Icon><PathIcon Data="{StaticResource BoldIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
<AppBarButton Label="Italic" DynamicOverflowOrder="2"><AppBarButton.Icon><PathIcon Data="{StaticResource ItalicIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
<AppBarButton Label="Delete" DynamicOverflowOrder="3"><AppBarButton.Icon><PathIcon Data="{StaticResource DeleteIcon}" /></AppBarButton.Icon></AppBarButton>
|
|
</CommandBar.PrimaryCommands>
|
|
</CommandBar>
|
|
</Border>
|
|
</StackPanel>
|
|
</DockPanel>
|
|
</UserControl>
|
|
|