この記事の英語版を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

UIElement.OpacityMask プロパティ

このオブジェクトの領域の不透明度を変更する場合に使用するブラシを取得または設定します。

名前空間:  System.Windows
アセンブリ :  System.Windows (System.Windows.dll 内)

public Brush OpacityMask { get; set; }
<uiElement>
  <uiElement.OpacityMask>
    singleBrush
  </uiElement.OpacityMask>
</uiElement>

XAML の値

singleBrush

Brush から派生したオブジェクトに対する単一のオブジェクト要素。 これは通常 LinearGradientBrushRadialGradientBrush、または ImageBrush のいずれかです。

プロパティ値

型 : System.Windows.Media.Brush
このオブジェクトに適用される不透明度を表すブラシ。 既定値は null です。

Dependency property identifier field: OpacityMaskProperty

このプロパティは、指定された Brush のアルファ チャネル値のみを使用します。 ブラシのコンテンツのその他のチャネル (赤、緑、または青) は無視されます。

不透明マスクに使用される最も一般的な BrushImageBrush で、これは、不規則な図形を使用する、ビネットなどのさまざまなマスク手法に応用できます。 技術的には、定義済みの任意の Brush (LinearGradientBrush など) を使用することもできます。 ビデオには一般にアルファ情報が含まれないため (また、Silverlight で使用されるコーデックはビデオのアルファ情報を処理できないため)、この目的には VideoBrush はお勧めしません。アルファを ARGB 形式で指定するコンストラクター構文の 1 つで作成された SolidColorBrush は許可されますが、結果は、SolidColorBrush のアルファと同じ要素を使用した Opacity の場合と区別できません。

通常、これらのブラシの XAML 構文には、XAML にプロパティ要素構文を埋め込むための Brush 派生オブジェクト要素が必要です。この XAML 構文は上に示されています。 SolidColorBrush およびその文字列変換動作に関連する属性構文の使用は技術的には可能です。ただし、前の解説で説明した理由から、OpacityMask に対して SolidColorBrush を使用するのは一般的ではありません。

次の XAML は、放射状グラデーションを使用して、イメージを徐々にフェード アウトさせ、楕円の端の部分で不透明度が 0 となるように、イメージの中央に楕円形のマスクを配置する例です。

<Image Source="sampleImages/forest.jpg" Height="100">
  <Image.OpacityMask>
    <RadialGradientBrush Center="50,50" GradientOrigin="50,50" MappingMode="Absolute" RadiusX="90" RadiusY="50">
      <GradientStop Color="#00000000" Offset="25" />
      <GradientStop Color="#20000000" Offset="12" />
      <GradientStop Color="#FF000000" Offset="0" />
    </RadialGradientBrush>
  </Image.OpacityMask>
</Image> 

Silverlight

サポート対象 : 5、4、3

Silverlight for Windows Phone

サポート対象 : Windows Phone OS 7.1、Windows Phone OS 7.0

Silverlight でサポートされるオペレーティング システムの詳細については、「サポートされているオペレーティング システムとブラウザー」を参照してください。

コミュニティの追加

追加
表示: