none
[UWP] CommandBar.SecondaryCommands Text der einzelnen Items wird beschnitten RRS feed

  • Frage

  • Hallo,

    ich habe eine CommandBar erstellt und habe jetzt das Problem, das der Text in den SecondaryCommands beschnitten wird

    Zu sehen an der "Schriftgr" was eigentlich "Schriftgröße" heißen soll!

    Habe schon herumexperementiert und verschiedene HorizontalAllignments auf "Stretch" gestellt aber hatte bisher keinen Erfolg

    Die Styles sind folgende:

    CommandBar Style:

            <Style x:Key="CommandBarStyle" TargetType="CommandBar">
                <Setter Property="Background" Value="{ThemeResource SystemControlBackgroundChromeMediumBrush}" />
                <Setter Property="Foreground" Value="{ThemeResource SystemControlForegroundBaseHighBrush}"/>
                <Setter Property="IsTabStop" Value="False" />
                <Setter Property="VerticalAlignment" Value="Top"/>
                <Setter Property="HorizontalAlignment" Value="Stretch"/>
                <Setter Property="HorizontalContentAlignment" Value="Left" />
                <Setter Property="VerticalContentAlignment" Value="Top" />
                <Setter Property="ClosedDisplayMode" Value="Compact" />
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="CommandBar">
                            <Grid x:Name="LayoutRoot" Background="{TemplateBinding Background}">
                                <VisualStateManager.VisualStateGroups>
                                    [...]
                                </VisualStateManager.VisualStateGroups>
    
                                <Grid.Clip>
                                    <RectangleGeometry Rect="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.ClipRect}">
                                        <RectangleGeometry.Transform>
                                            <TranslateTransform x:Name="ClipGeometryTransform" Y="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=TemplateSettings.CompactVerticalDelta}"/>
                                        </RectangleGeometry.Transform>
                                    </RectangleGeometry>
                                </Grid.Clip>
    
                                <Grid x:Name="ContentRoot"
                                VerticalAlignment="Top"
                                Margin="{TemplateBinding Padding}"
                                Height="{TemplateBinding Height}"
                                Background="{TemplateBinding Background}"
                                Opacity="{TemplateBinding Opacity}">
    
                                    <Grid.ColumnDefinitions>
                                        <ColumnDefinition Width="*"/>
                                        <ColumnDefinition Width="Auto"/>
                                    </Grid.ColumnDefinitions>
    
                                    <Grid.RenderTransform>
                                        <TranslateTransform x:Name="ContentTransform"/>
                                    </Grid.RenderTransform>
    
                                    <Grid>
                                        <Grid.ColumnDefinitions>
                                            <ColumnDefinition Width="*"/>
                                            <ColumnDefinition Width="Auto"/>
                                        </Grid.ColumnDefinitions>
    
                                        <!-- Use a ContentControl rather than a ContentPresenter so that IsEnabled can be set to false
                                            in the Minimal/HiddenClosed states to remove it from being a tab-stop candidate. -->
                                        <ContentControl
                                        x:Name="ContentControl"
                                        Content="{TemplateBinding Content}"
                                        ContentTemplate="{TemplateBinding ContentTemplate}"
                                        ContentTransitions="{TemplateBinding ContentTransitions}"
                                        Foreground="{TemplateBinding Foreground}"
                                        HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}"
                                        VerticalAlignment="{TemplateBinding VerticalContentAlignment}"
                                        HorizontalContentAlignment="{TemplateBinding HorizontalContentAlignment}"
                                        VerticalContentAlignment="{TemplateBinding VerticalContentAlignment}"
                                        IsTabStop="False"/>
    
                                        <ItemsControl
                                        x:Name="PrimaryItemsControl"
                                        HorizontalAlignment="Right"
                                        MinHeight="{ThemeResource AppBarThemeMinHeight}"
                                        IsTabStop="False"
                                        Grid.Column="1">
                                            <ItemsControl.ItemsPanel>
                                                <ItemsPanelTemplate>
                                                    <StackPanel Orientation="Horizontal" />
                                                </ItemsPanelTemplate>
                                            </ItemsControl.ItemsPanel>
                                        </ItemsControl>
                                    </Grid>
    
                                    <Button
                                    x:Name="MoreButton"
                                    Foreground="{TemplateBinding Foreground}"
                                    Style="{StaticResource EllipsisButton}"
                                    Padding="16,23,16,0"
                                    MinHeight="{ThemeResource AppBarThemeCompactHeight}"
                                    VerticalAlignment="Top"
                                    Grid.Column="1">
                                        <FontIcon
                                        x:Name="EllipsisIcon"
                                        VerticalAlignment="Center"
                                        FontFamily="{ThemeResource SymbolThemeFontFamily}"
                                        FontSize="16"
                                        Glyph="&#xE10C;"
                                        Height="{ThemeResource AppBarExpandButtonCircleDiameter}"/>
                                    </Button>
    
                                    <Popup x:Name="OverflowPopup">
                                        <Popup.RenderTransform>
                                            <TranslateTransform x:Name="OverflowPopupOffsetTransform"/>
                                        </Popup.RenderTransform>
    
                                        <Grid x:Name="OverflowContentRoot"
                                        MinWidth="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CommandBarTemplateSettings.OverflowContentMinWidth}"
                                        MaxWidth="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CommandBarTemplateSettings.OverflowContentMaxWidth}"
                                        MaxHeight="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CommandBarTemplateSettings.OverflowContentMaxHeight}">
                                            <Grid.Clip>
                                                <RectangleGeometry x:Name="OverflowContentRootClip"/>
                                            </Grid.Clip>
    
                                            <Grid.RenderTransform>
                                                <TranslateTransform x:Name="OverflowContentRootTransform"
                                                X="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=CommandBarTemplateSettings.OverflowContentHorizontalOffset}"/>
                                            </Grid.RenderTransform>
    
                                            <CommandBarOverflowPresenter x:Name="SecondaryItemsControl"
                                            Style="{TemplateBinding CommandBarOverflowPresenterStyle}"
                                            IsEnabled="False"
                                            IsTabStop="False">
                                                <CommandBarOverflowPresenter.RenderTransform>
                                                    <TranslateTransform x:Name="OverflowContentTransform"/>
                                                </CommandBarOverflowPresenter.RenderTransform>
                                                <CommandBarOverflowPresenter.ItemContainerStyle>
                                                    <Style TargetType="FrameworkElement">
                                                        <Setter Property="HorizontalAlignment" Value="Stretch"/>
                                                        <Setter Property="Width" Value="NaN"/>
                                                    </Style>
                                                </CommandBarOverflowPresenter.ItemContainerStyle>
                                            </CommandBarOverflowPresenter>
                                        </Grid>
                                    </Popup>
                                    <Rectangle x:Name="HighContrastBorder" x:DeferLoadStrategy="Lazy" Grid.ColumnSpan="2"  Visibility="Collapsed" VerticalAlignment="Stretch" Stroke="{ThemeResource SystemControlForegroundTransparentBrush}" StrokeThickness="1"/>
                                </Grid>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>

    CommandBarOverflowPresenter Style:

            <Style x:Key="CommandBarOverflowPresenterStyle1" TargetType="CommandBarOverflowPresenter">
                <Setter Property="Background" Value="{ThemeResource SystemControlBackgroundChromeMediumLowBrush}"/>
                <Setter Property="MaxWidth" Value="{ThemeResource CommandBarOverflowMaxWidth}"/>
                <Setter Property="ScrollViewer.HorizontalScrollMode" Value="Disabled"/>
                <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
                <Setter Property="ScrollViewer.VerticalScrollMode" Value="Auto"/>
                <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
                <Setter Property="ScrollViewer.ZoomMode" Value="Disabled"/>
                <Setter Property="Template">
                    <Setter.Value>
                        <ControlTemplate TargetType="CommandBarOverflowPresenter">
                            <Grid Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}">
                                <ScrollViewer AutomationProperties.AccessibilityView="Raw" HorizontalScrollMode="{TemplateBinding ScrollViewer.HorizontalScrollMode}" HorizontalScrollBarVisibility="{TemplateBinding ScrollViewer.HorizontalScrollBarVisibility}" VerticalScrollBarVisibility="{TemplateBinding ScrollViewer.VerticalScrollBarVisibility}" VerticalScrollMode="{TemplateBinding ScrollViewer.VerticalScrollMode}" ZoomMode="{TemplateBinding ScrollViewer.ZoomMode}">
                                    <ItemsPresenter x:Name="ItemsPresenter" Margin="0,0,0,20" HorizontalAlignment="Stretch"/>
                                </ScrollViewer>
                                <Rectangle Stroke="{ThemeResource SystemControlForegroundTransparentBrush}" StrokeThickness="1"/>
                            </Grid>
                        </ControlTemplate>
                    </Setter.Value>
                </Setter>
            </Style>
    Jemand eine Idee woran das liegen kann?



    • Bearbeitet PHep Freitag, 4. Dezember 2015 15:13
    Freitag, 4. Dezember 2015 14:13

Antworten

  • Hallo Phep,

    Also wenn ich eine Windows 10 UWP App erstellt und deine Styles einbaue, dann gehts:

    An welchem Style liegts denn? Was passiert, wenn Du beide auskommtentierst?

    Machst Du Win10 oder 8 oder 8.1?

    Gruss MM


    PS: Please mark as answer if helpful. Thanks!
    Blog: http://www.manuelmeyer.net
    Twitter: https://twitter.com/manumeyer1

    • Als Antwort markiert PHep Freitag, 18. Dezember 2015 13:48
    Dienstag, 8. Dezember 2015 08:59
  • Bei mir gehts jetzt auch, habe den Fehler gefunden! Ich hatte die AppBarrButtons im CommandBar.PrimaryCommands angelegt, dadurch musste ich den ButtonStyle ändern und das war wahrscheinlich das Problem. Habe das "PrimaryCommands" jetzt gelöscht und die Buttons direkt in der CommandBar eingebettet und den ButtonStyle gelöscht - dann ging's!!!
    • Als Antwort markiert PHep Freitag, 18. Dezember 2015 13:48
    Freitag, 18. Dezember 2015 13:48

Alle Antworten

  • Hallo Phep,

    Also wenn ich eine Windows 10 UWP App erstellt und deine Styles einbaue, dann gehts:

    An welchem Style liegts denn? Was passiert, wenn Du beide auskommtentierst?

    Machst Du Win10 oder 8 oder 8.1?

    Gruss MM


    PS: Please mark as answer if helpful. Thanks!
    Blog: http://www.manuelmeyer.net
    Twitter: https://twitter.com/manumeyer1

    • Als Antwort markiert PHep Freitag, 18. Dezember 2015 13:48
    Dienstag, 8. Dezember 2015 08:59
  • Bei mir gehts jetzt auch, habe den Fehler gefunden! Ich hatte die AppBarrButtons im CommandBar.PrimaryCommands angelegt, dadurch musste ich den ButtonStyle ändern und das war wahrscheinlich das Problem. Habe das "PrimaryCommands" jetzt gelöscht und die Buttons direkt in der CommandBar eingebettet und den ButtonStyle gelöscht - dann ging's!!!
    • Als Antwort markiert PHep Freitag, 18. Dezember 2015 13:48
    Freitag, 18. Dezember 2015 13:48