VisualBrush.Visual 屬性

定義

取得或設定筆刷的內容。

public:
 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

屬性值

筆刷的內容。 預設值為 null

備註

有兩種方式可以指定 Visual 的內容 VisualBrush

  • 建立新的 Visual ,並使用它來設定 VisualVisualBrush 屬性。

  • 使用現有的 Visual ,這會建立目標 Visual 的重複影像。 然後 VisualBrush ,您可以使用 來建立有趣的效果,例如反射和放大。

Visual 在整體 WPF 類別階層中相當高,因此非常大量的物件可能做為您用於 的 VisualBrush 視覺效果;無法在此處顯示整個清單。 請參閱 Visual ;請參閱 一節,其中會顯示立即衍生的類別。 接著,您可以按一下立即衍生的類別,並周遊階層,以瞭解各種可能性。 在最上層,您可能用於 VisualBrush 的兩個最常見物件類別為 UIElementContainerVisualUIElement 基本上包含任何可以參與 WPF 應用程式 UI 的 UI 元素。 ContainerVisual 包含 DrawingGroup 一或多個 Drawing 衍生物件的 。

當您為 定義 新的 VisualVisualBrush ,且 VisualUIElement 面板或控制項) 之類的 (時,當 屬性設定 true 為 時 AutoLayoutContent ,配置系統會在 及其子項目上 UIElement 執行。 不過,根 UIElement 基本上與系統的其餘部分隔離;套用筆刷的父系所指定的樣式、分鏡腳本和外部配置無法滲透此界限。 因此,您應該明確指定根 UIElement 的大小,因為其唯一的父系是 VisualBrush ,因此它無法自動將本身調整為繪製的區域。 如需Windows Presentation Foundation (WPF) 版面配置的詳細資訊,請參閱版面配置

如果 位於筆刷的父鏈結中,更新至 的 VisualBrush 視覺化樹狀結構將不會傳播 BitmapEffect 。 您可以藉由強制在效果上方的物件上更新場景,來解決這項限制。 您可以呼叫 InvalidateVisual 或包含動畫來強制場景更新。

注意

VisualBrush當屬性 Visual 設定為 以外的 null 任何值時,無法將 設為唯讀 (凍結) 。

XAML 屬性項目用法

<object>  
  <object.Visual>  
    singleVisualRoot  
  </object.Visual>  
</object>  

XAML Attribute Usage

<物件Visual=「{bindingExpression}」/>

-或-

<物件Visual=「{resourceExpression}」/>

XAML 值

singleVisualRoot
單一物件專案,定義筆刷的新視覺專案。 這必須是衍生自 Visual 的物件。 請參閱<備註>。

bindingExpression
評估為現有 Visual 實例的運算式。

resourceExpression
評估 StaticResourceDynamicResource 為現有 Visual 實例的 。 請參閱 XAML 資源

相依性屬性資訊

識別碼欄位 VisualProperty
中繼資料屬性設定為 true

適用於