次の方法で共有


FlyoutBase.ShouldConstrainToRootBounds プロパティ

定義

ポップアップを XAML ルートの境界内に表示するかどうかを示す値を取得または設定します。

public:
 property bool ShouldConstrainToRootBounds { bool get(); void set(bool value); };
bool ShouldConstrainToRootBounds();

void ShouldConstrainToRootBounds(bool value);
public bool ShouldConstrainToRootBounds { get; set; }
var boolean = flyoutBase.shouldConstrainToRootBounds;
flyoutBase.shouldConstrainToRootBounds = boolean;
Public Property ShouldConstrainToRootBounds As Boolean

プロパティ値

Boolean

bool

XAML ルートの境界内にポップアップを表示する必要がある場合は true。それ以外の場合は false

Windows の要件

デバイス ファミリ
Windows 10, version 1903 (10.0.18362.0 で導入)
API contract
Windows.Foundation.UniversalApiContract (v8.0 で導入)

この例では、ポップアップは既定ではルート境界に制限されません。 したがって、ポップアップをボタンの下に配置する要求は、ディスプレイに空きがある限り受け入れられます。 ポップアップはアプリ ウィンドウの外側に表示されます。

<Button Content="Button"
        VerticalAlignment="Bottom" HorizontalAlignment="Center">
    <Button.Flyout>
        <Flyout Placement="Bottom">
            <TextBlock Text="Flyout content" />
        </Flyout>
    </Button.Flyout>
</Button>
閉じたアプリ バー コントロール

この例では、 ShouldConstrainToRootBoundstrue に設定されているため、ポップアップはルート境界に制限されます。 そのため、ボタンの下にポップアップを配置する要求は受け付けられません。ポップアップはボタンの上のアプリ ウィンドウ内に表示されます。

<Button Content="Button"
        VerticalAlignment="Bottom" HorizontalAlignment="Center">
    <Button.Flyout>
        <Flyout Placement="Bottom"
                ShouldConstrainToRootBounds="True">
            <TextBlock Text="Flyout content" />
        </Flyout>
    </Button.Flyout>
</Button>
閉じたアプリ バー コントロール

注釈

既定値は、派生型によって異なります。 ポップアップの場合、既定値は ですtrueMenuFlyoutCommandBarFlyout の場合、既定値は ですfalse

このプロパティは、デスクトップで実行されているアプリにのみ適用されます。 ポップアップが実際にルート境界に制約されているかどうかをチェックするには、IsConstrainedToRootBounds プロパティをチェックします。

デスクトップ上で実行されているアプリで、このプロパティが true の場合、ポップアップは メイン XAML ウィンドウ ハンドル (HWND) 内に表示されます。 このプロパティが false の場合、ポップアップは独自の最上位レベル HWND に表示されます。 この場合、ポップアップは、メイン アプリ ウィンドウを超えて拡張するように配置される場合があります。

のポップアップ ShouldConstrainToRootBounds = false が最初に表示されると、ポップアップは独自のウィンドウに配置され、そのコンテキストに表示されます。 表示された後は、 ShouldConstrainToRootBoundstrue に戻すことはできません。

XAML ルートは、CoreWindowXAML アイランド、または AppWindow のいずれかです。

適用対象

こちらもご覧ください