共用方式為


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>
關閉的應用程式行控制項

在此範例中, ShouldConstrainToRootBounds 設定為 true,因此飛出視窗會限制為根界限。 因此,不允許將飛出視窗放在按鈕下方的要求,而且飛出視窗會顯示在按鈕上方的應用程式視窗中。

<Button Content="Button"
        VerticalAlignment="Bottom" HorizontalAlignment="Center">
    <Button.Flyout>
        <Flyout Placement="Bottom"
                ShouldConstrainToRootBounds="True">
            <TextBlock Text="Flyout content" />
        </Flyout>
    </Button.Flyout>
</Button>
關閉的應用程式行控制項

備註

預設值取決於衍生類型。 針對 飛出視窗,預設值為 true 。 針對 MenuFlyoutCommandBarFlyout,預設值為 false

此屬性僅適用于在桌面上執行的應用程式。 若要檢查飛出視窗是否實際受限於根界限,請檢查 IsConstrainedToRootBounds 屬性。

在桌面上執行的應用程式中,當此屬性 為 true時,飛出視窗會顯示在主要 XAML 視窗控制碼中, (HWND) 。 當此屬性為 false時,飛出視窗會顯示在自己的最上層 HWND 中。 在此情況下,飛出視窗的位置可能會延伸到主要應用程式視窗之外。

第一次顯示具有 的 ShouldConstrainToRootBounds = false 飛出視窗時,它會放在自己的視窗中,並顯示在該內容中。 顯示之後, ShouldConstrainToRootBounds 無法重新設定為 true

XAML 根可能是CoreWindowXAML IslandAppWindow

適用於

另請參閱