BitmapCacheBrush 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
使用快取的內容來繪製區域。
public ref class BitmapCacheBrush sealed : System::Windows::Media::Brush
public sealed class BitmapCacheBrush : System.Windows.Media.Brush
type BitmapCacheBrush = class
inherit Brush
Public NotInheritable Class BitmapCacheBrush
Inherits Brush
- 繼承
範例
下列程式碼範例示範如何將 與 BitmapCacheBrush 產生關聯 BitmapCache 。 您可以在 BitmapCacheBrush 多個元素上使用資源,並達到良好的效能。 如需完整的程式代碼清單,請參閱 How to: Use a Cached Element as a Brush。
<Window.Resources>
<RichTextBox x:Key="cachedRichTextBox" >
<RichTextBox.CacheMode>
<BitmapCache EnableClearType="True" RenderAtScale="1" SnapsToDevicePixels="True" />
</RichTextBox.CacheMode>
</RichTextBox>
<BitmapCacheBrush x:Key="cachedRichTextBoxBrush" Target="{StaticResource cachedRichTextBox}">
<BitmapCacheBrush.BitmapCache>
<BitmapCache EnableClearType="False" RenderAtScale="0.4" SnapsToDevicePixels="False" />
</BitmapCacheBrush.BitmapCache>
</BitmapCacheBrush>
</Window.Resources>
備註
使用 類別 BitmapCacheBrush 有效率地重複使用快取的專案。 當您需要將複雜內容繪製到多個元素時,這非常有用。 使用 類別 BitmapCache 來快取複雜專案。
Visual將 指派給 Target 屬性,並選擇性地將 指派 BitmapCache 給 BitmapCache 屬性。 筆 CacheMode 刷和目標的 Visual 會互動以產生不同的行為。 下表描述此互動。
目標沒有 CacheMode | 目標具有 CacheMode | |
---|---|---|
筆刷沒有 CacheMode | 目標視覺效果通常會呈現;筆刷使用預設快取行為。 | 目標視覺效果會轉譯成自己的快取;筆刷會在轉譯時使用目標的快取。 |
筆刷具有 CacheMode | 目標視覺效果通常會呈現;筆刷會將目標轉譯成自己的快取,並使用此來轉譯。 | 目標視覺效果會轉譯成自己的快取;筆刷會將目標轉譯成筆刷本身的快取,並使用此來轉譯。 |
類別 BitmapCacheBrush 類似于 VisualBrush 類別,但 BitmapCacheBrush 一律會從目標專案上的快取,或從 屬性所 BitmapCache 定義的快取轉譯。 類別 BitmapCacheBrush 也支援已變更的區域。
下表顯示 類別的預設點陣圖快取設定 BitmapCacheBrush 。
點陣圖快取屬性 | 預設值 |
---|---|
SnapsToDevicePixels | false |
EnableClearType | false |
RenderAtScale | 1 |
類別 SnapsToDevicePixels 會 BitmapCacheBrush 忽略 屬性。
類別 BitmapCacheBrush 會忽略根 Visual 上的下列屬性。 此行為與 VisualBrush 類別不同。
建構函式
BitmapCacheBrush() |
初始化 BitmapCacheBrush 類別的新執行個體。 |
BitmapCacheBrush(Visual) |
使用指定的 BitmapCacheBrush 初始化 Visual 類別的新執行個體。 |
欄位
AutoLayoutContentProperty |
識別 AutoLayoutContent 相依性屬性。 |
BitmapCacheProperty |
識別 BitmapCache 相依性屬性。 |
TargetProperty |
識別 Target 相依性屬性。 |
屬性
AutoLayoutContent |
取得或設定值,這個值指出配置是否要套用至這個筆刷的內容。 |
BitmapCache |
取得或設定表示快取內容的 CacheMode。 |
CanFreeze |
取得值,指出是否可以將物件設為不可修改。 (繼承來源 Freezable) |
DependencyObjectType |
DependencyObjectType取得包裝這個實例之 CLR 型別的 。 (繼承來源 DependencyObject) |
Dispatcher |
取得與這個 Dispatcher 關聯的 DispatcherObject。 (繼承來源 DispatcherObject) |
HasAnimatedProperties |
取得值,這個值表示是否有一個或多個 AnimationClock 物件與這個物件的任何一個相依性屬性相關聯。 (繼承來源 Animatable) |
IsFrozen |
取得值,該值表示物件目前是否可修改。 (繼承來源 Freezable) |
IsSealed |
取得值,這個值表示此執行個體目前是否已密封 (唯讀)。 (繼承來源 DependencyObject) |
Opacity |
取得或設定 Brush 的不透明度。 (繼承來源 Brush) |
RelativeTransform |
取得或設定使用相對座標套用到筆刷的轉換。 (繼承來源 Brush) |
Target |
取得或設定要快取的目標視覺化部分。 |
Transform |
取得或設定套用到筆刷的轉換。 在已經對應及定位筆刷輸出之後,套用這個轉換。 (繼承來源 Brush) |
方法
事件
Changed |
發生於 Freezable 或所含的物件遭到修改時。 (繼承來源 Freezable) |
明確介面實作
IFormattable.ToString(String, IFormatProvider) |
使用指定的格式,格式化目前執行個體的值。 (繼承來源 Brush) |