Share via


IXamlSourceTransparency.IsBackgroundTransparent プロパティ

定義

名前空間: Windows.UI.Xaml

現在のスレッド上のすべての DesktopWindowXamlSource オブジェクトの背景が透明かどうかを示す値を取得または設定します。

[uuid(06636c29-5a17-458d-8ea2-2422d997a922)]
interface IXamlSourceTransparency
{
    Boolean IsBackgroundTransparent;
};

プロパティ値

Boolean

trueウィンドウの背景が透明な場合。それ以外の場合は . false

Windows の要件

デバイス ファミリWindows 10 (10.0.17763.0 で導入)

この例では、透明な背景を 持つよう構成されている DesktopWindowXamlSource オブジェクトを示します。

// Make all DesktopWindowXamlSource objects on this
// thread have a transparent background.
var xamlSourceTransparency = (IXamlSourceTransparency)Window.Current;
xamlSourceTransparency.IsBackgroundTransparent = true;

true設定するとIsBackgroundTransparent、以下が島のコンテンツとして設定されている場合、最初の列にはホストのコンテンツが表示されますが、2 番目の列は白になります。

<Grid ColumnDefinitions="Auto,*">
    <TextBlock>Column 0 text</TextBlock>

    <Border Grid.Column="1" Background="White">
        <TextBlock>Column 1 text</TextBlock>
    </Border>
</Grid>

解説

DesktopWindowXamlSource クラスは、別のアプリで Xaml をホストするために使用されます。 たとえば、これを使用して、WPF または WinForms アプリで一部の Xaml コンテンツをホストできます。 詳しくは、 デスクトップ アプリ (XAML Islands) での WinRT XAML コントロールのホストに関するページをご覧ください。

既定では、XAML コンテンツは不透明な背景を持ちます。つまり、XAML の背後にあるホスト コンテンツを表示することはできません。 (WinUI3 では、この動作は変更されます。XAML には常に透明な背景があります)。

現在のスレッド上のすべての DesktopWindowXamlSource オブジェクトに透明な背景を設定するには、このプロパティtrueを設定します。

このインターフェイスは XAML ウィンドウから 取得されます

注意

このプロパティを true XAML UWP アプリで設定すると、全画面表示モードの場合 (ApplicationView.TryEnterFullScreenMode を呼び出した場合) にも XAML ウィンドウが透明になります。