4

AutoSuggestBoxに を追加したいと思いCommandBarます。AutoSuggestBoxただし、次のコードではストレッチが行われません。HorizontalContentAlignment="Stretch"とを設定してみHorizontalAlignment="Stretch"ましたが、影響はありません。私は何が欠けていますか?

    <CommandBar Grid.Row="0" HorizontalContentAlignment="Stretch">
        <CommandBar.Content>
            <AutoSuggestBox HorizontalAlignment="Stretch" Margin="8 8 8 4" PlaceholderText="Search podcasts" QueryIcon="Find">
                <Interactivity:Interaction.Behaviors>
                    <Core:EventTriggerBehavior EventName="QuerySubmitted">
                        <Core:InvokeCommandAction                         
                    Command="{Binding SearchCommand}"
                    InputConverter="{StaticResource QueryArgsConverter}" />
                    </Core:EventTriggerBehavior>
                </Interactivity:Interaction.Behaviors>
            </AutoSuggestBox>
        </CommandBar.Content>
    </CommandBar>

エラー画像

4

1 に答える 1

6

Horizo​​ntalContentAlignment="Stretch" と Horizo​​ntalAlignment="Stretch" を設定してみましたが、影響はありません。

に設定Horizontal​Alignmentするstretchと、要素が親要素のレイアウト スロット全体を埋めるように引き伸ばされます。あなたのコード スニペットでは、はのAutoSuggestBoxコンテンツ内にCommandBarあります。したがって、実際には親要素は直接ではありません。ここのサイズは子のサイズに依存しているように見えるので、埋めるスペースがありません。CommandBarCommandBarContent​ControlContentControlCommandBarContentControlAutoSuggestBox

実際には、コンテンツ領域はバーの左側に配置されるように設計されています。詳細については、アプリ バーの構造を参照してください。なので伸ばすのはオススメしません。のコンテナーとして他のコントロールを使用することを検討してAutoSuggestBoxください。ストレッチ効果が必要な場合は、幅をAutoSuggestBox手動で計算できます。例えば:

<CommandBar x:Name="cmdbar">
    <CommandBar.Content>
        <AutoSuggestBox
            x:Name="autobox"
            Width="{Binding ElementName=cmdbar, Path=ActualWidth}"
            HorizontalAlignment="Stretch"
            PlaceholderText="Search podcasts"
            QueryIcon="Find" />
    </CommandBar.Content>
</CommandBar>
于 2017-05-12T09:46:44.893 に答える