WPF學習筆記之11: Adorner (裝飾器)

來源:互聯網
上載者:User
Adorner:  抽象基類,所有具體裝飾器的實現都從該類繼承。
AdornerLayer:  表示一個或多個裝飾元素的裝飾器的呈現層。
AdornerDecorator:  使裝飾器層與元素集合相關聯。

public abstract class Adorner : FrameworkElement
{
}
public class AdornerLayer : FrameworkElement
{
}
public class AdornerDecorator : Decorator
{
}
public class Decorator : FrameworkElement, IAddChild
{
}

Adorner介紹:
1. Adorner 是一種特殊類型的 FrameworkElement,用於向使用者提供可視化提示。
2. Adorner 在 AdornerLayer 中呈現,這是一個始終位於裝飾元素或裝飾元素集合上方的呈現圖面。
3. Adorner 通常使用位於它裝飾元素左上部的標準 2-D 座標原點,相對於其綁定到的元素進行定位。
4. 裝飾器的常見應用程式套件括:
4.1 向 UIElement 添加功能控點,使用這些控點,使用者可以通過某種方式(調整大小、旋轉、重新置放等等)操作元素。
4.2 提供可視反饋以指示各種狀態,或響應各種事件。
4.3 在 UIElement 上疊加視覺效果。
4.4 從視覺上遮蓋或重寫 UIElement 的一部分或全部。
5. Adorner 不包括任何繼承呈現行為,確保裝飾器呈現是裝飾器實施者的責任。 實現呈現行為的常見方式是重寫 OnRenderSizeChanged 方法,並使用一個或多個 DrawingContext 對象來按需呈現裝飾器的視覺效果。
6. 放置在 AdornerLayer 中的所有內容均呈現在您已設定的任何其餘樣式的頂部。也就是說,裝飾器始終以可見的方式位於頂部,無法使用 Z 軸順序重寫。
7. Adorner 就像任何其他 FrameworkElement 一樣接收輸入事件。
     因為裝飾器的 Z 軸順序總是高於它所裝飾的元素,所以該裝飾器接收可能適用於基礎裝飾元素的輸入事件(例如 Drop 或 MouseMove)。 裝飾器可以偵聽某些輸入事件,並通過重新引發這些事件將其傳遞給基礎裝飾元素。
     若要對裝飾器下的元素啟用傳遞點擊測試,請在裝飾器上將點擊測試 IsHitTestVisible 的屬性設定為 false。

More info, please refer to MSDN.
裝飾器概述

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.