VisualBrush.Visual プロパティ


ブラシのコンテンツを取得または設定します。Gets or sets the brush's content.

 property System::Windows::Media::Visual ^ Visual { System::Windows::Media::Visual ^ get(); void set(System::Windows::Media::Visual ^ value); };
public System.Windows.Media.Visual Visual { get; set; }
member this.Visual : System.Windows.Media.Visual with get, set
Public Property Visual As Visual



ブラシのコンテンツ。The brush's content. 既定値は、null です。The default is null.


VisualBrushVisual コンテンツを指定する方法は 2 つあります。There are two ways to specify the Visual content of a VisualBrush.

  • 新しい Visual を作成し、それを使用して VisualBrushVisual プロパティを設定する。Create a new Visual and use it to set the Visual property of the VisualBrush.

  • ターゲットの Visual の複製イメージを作成する既存の Visual を使用する。Use an existing Visual, which creates a duplicate image of the target Visual. その後、VisualBrush を使用して、反射や拡大などの面白い効果を作り出すことができます。You can then use the VisualBrush to create interesting effects, such as reflection and magnification.

Visual は WPF クラス階層全体で非常に高いため、非常に多くのオブジェクトがに使用するビジュアルとして機能する可能性があり VisualBrush ます。リスト全体をここで表示することはできません。Visual is quite high in the overall WPF class hierarchy, so a very large number of objects could possibly serve as the visual that you use for a VisualBrush; the entire list cannot be shown here. 「」を参照してください。 Visual 「継承階層」セクションを参照すると、すぐに派生するクラスが表示されます。See Visual; refer to the "Inheritance Hierarchy" section, which will show the immediately derived classes. その後、すぐに派生したクラスをクリックして階層を走査し、あらゆる可能性を把握できます。You can then click on the immediately derived classes and traverse the hierarchies to get a sense of the full range of possibilities. 最上位レベルでは、に使用する可能性のあるオブジェクトの最も一般的な2つのカテゴリは VisualBrush UIElement または ContainerVisual です。At a top level, the two most common categories of objects you might use for a VisualBrush are UIElement or ContainerVisual. UIElement は基本的に、WPF アプリケーションの UI に参加できる UI 要素を含みます。UIElement encompasses basically any UI element that can otherwise participate in the UI for a WPF application. ContainerVisualDrawingGroup1 つ以上の派生オブジェクトを含むを格納 Drawing します。ContainerVisual contains a DrawingGroup that includes one or more Drawing-derived objects.

VisualBrush の新しい Visual を定義し、その VisualUIElement (パネルやコントロールなど) である場合、AutoLayoutContent プロパティが true に設定されていると、レイアウト システムは UIElement とその子要素に対して実行されます。When you define a new Visual for a VisualBrush and that Visual is a UIElement (such as a panel or control), the layout system runs on the UIElement and its child elements when the AutoLayoutContent property is set to true. ただし、ルートは、 UIElement 基本的にシステムの他の部分から分離されています。つまり、ブラシが適用される親によって指定されたスタイル、ストーリーボード、および外部レイアウトは、この境界をはことはできません。However, the root UIElement is essentially isolated from the rest of the system; styles, storyboards, and external layout dictated by the parent where the brush is applied cannot permeate this boundary. ルートの UIElement は、唯一の親が VisualBrush であるために塗りつぶす領域に合わせて自動的にそれ自体のサイズを調整できないので、そのサイズを明示的に指定する必要があります。Therefore, you should explicitly specify the size of the root UIElement, because its only parent is the VisualBrush and therefore it cannot automatically size itself to the area being painted. Windows Presentation Foundation (WPF) でのレイアウトの詳細については、「 レイアウト」を参照してください。For more information about layout in Windows Presentation Foundation (WPF), see the Layout.

VisualBrush BitmapEffect がブラシの親チェーン内にある場合、のビジュアルツリーの更新は反映されません。Updates to the visual tree of a VisualBrush will not propagate if a BitmapEffect is in the brush's parent chain. この制限を回避するには、効果の上にあるオブジェクトのシーンを強制的に更新します。You can workaround this limitation by forcing an update of the scene on the object above the effect. InvalidateVisualシーンの更新を強制するには、アニメーションを呼び出すか、含めることができます。You can call InvalidateVisual or include an animation to force a scene update.


VisualBrush Visual プロパティが以外の値に設定されている場合、を読み取り専用 (固定) にすることはできません。null.A VisualBrush cannot be made read-only (frozen) when its Visual property is set to any value other than null.

XAML プロパティ要素の使用XAML Property Element Usage


XAML 属性の使用方法XAML Attribute Usage

<オブジェクト Visual= "{Bindingexpression}"/><object Visual="{bindingExpression}"/>

- または --or-

<オブジェクト Visual= "{Resourceexpression}"/><object Visual="{resourceExpression}"/>


ブラシの新しいビジュアル要素を定義する単一のオブジェクト要素。A single object element that defines a new visual element for the brush. これは、から派生するオブジェクトである必要があり Visual ます。This must be an object that derives from Visual. 「解説」を参照してください。See Remarks.

既存のインスタンスに評価される VisualA that evaluates to an existing Visual instance.

StaticResource既存の DynamicResource インスタンスに評価されるまたは VisualA StaticResource or DynamicResource that evaluates to an existing Visual instance. XAML リソース」を参照してください。See XAML Resources

依存プロパティ情報Dependency Property Information

識別子フィールドIdentifier field VisualProperty
メタデータプロパティがに設定される trueMetadata properties set to true なしNone