Geometry 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
public ref class Geometry : DependencyObject
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class Geometry : DependencyObject
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class Geometry : DependencyObject
Public Class Geometry
Inherits DependencyObject
- 繼承
- 衍生
- 屬性
備註
對於採用 Geometry 的屬性,您必須指定非Abstract 衍生類型的 Geometry、做為 XAML 的物件專案,或指定為程式碼的已定義實例。 如需詳細資訊,請參閱EllipseGeometry、GeometryGroup、LineGeometry、PathGeometry或 RectangleGeometry 的參考頁面。
幾何可以概念化為「簡單」或「複雜」。 EllipseGeometry、LineGeometry 和 RectangleGeometry 是簡單的幾何,其會將幾何圖形指定為具有基本座標或維度屬性的一個專案。 GeometryGroup 和 PathGeometry 是複雜的幾何。 GeometryGroup 會結合它保留為子物件的其他幾何。 PathGeometry 會使用一組巢狀圖形/區段路徑定義元素,或是設計工具通常輸出的精簡字串語法,來描述幾何的複雜路徑。
Geometry 不會完全定義自己的轉譯,因為它不是 UIElement 本身,而且必須提供為 UIElement 的一些屬性值,才能造成轉譯效果。 一般而言,Geometry 會提供為 Path (的數據,這是一種 Shape) 。
PathIcon.Data 屬性會採用 Geometry。 在實務上,您通常會為此指定 PathGeometry ,並以路徑的精簡字串語法表示其 Figures 屬性值。
GeometryCollection 是 Geometry 專案的強型別集合。 GeometryGroup.Children 屬性使用 GeometryCollection。
幾何 與 圖形
Shape 類別具有 Geometry 及其衍生類別缺少的 Fill、Stroke 和其他轉譯屬性。 Shape 類別是 FrameworkElement,因此參與配置系統;其衍生類別可用來做為支援UIElement子系之任何元素的內容。 另一方面,Geometry 類別只會將幾何定義為圖形基本類型,而且無法自行轉譯。 您可以使用 Geometry 做為自訂 UI 元素屬性的屬性類型,其中 Geometry 所啟用的基本圖形基本運算式在定義中很有用。
UIElement.Clip 的幾何
若要在 Windows 執行階段 中提供 UIElement.Clip 屬性的值,您必須特別使用 RectangleGeometry,而不是任何 Geometry 衍生類型。 如果您要從其他 XAML 架構移植 XAML 或程式代碼,請參閱是否可以將 UIElement.Clip 變更為使用 RectangleGeometry。 否則,您可能需要變更 Z 順序關聯性,並使用 ImageBrush 與具有「裁剪」部分 Alpha 透明度的 已修改 RenderTargetBitmap 來源重疊等技術。
Geometry 衍生類別
Geometry 是數個衍生類別的父類別,可定義不同類別的實際幾何:
- EllipseGeometry
- GeometryGroup - 可用來將多個幾何指定為 Children
- LineGeometry
- PathGeometry - 將此類型用於其他「簡單」幾何類型無法表示的任何幾何
- RectangleGeometry
屬性
Bounds | |
Dispatcher |
一律會在 Windows 應用程式 SDK 應用程式中傳 |
DispatcherQueue |
|
Empty |
取得空的 geometry 物件。 |
StandardFlatteningTolerance |
取得多邊形近似法使用的標準容許誤差。 |
Transform | |
TransformProperty |
識別 轉換 相依性屬性。 |
方法
ClearValue(DependencyProperty) |
清除相依性屬性的本機值。 (繼承來源 DependencyObject) |
GetAnimationBaseValue(DependencyProperty) |
傳回為相依性屬性建立的任何基底值,如果動畫未使用中,則適用此屬性。 (繼承來源 DependencyObject) |
GetValue(DependencyProperty) |
從 DependencyObject 傳回相依性屬性的目前有效值。 (繼承來源 DependencyObject) |
ReadLocalValue(DependencyProperty) |
如果已設定本機值,則傳回相依性屬性的本機值。 (繼承來源 DependencyObject) |
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback) |
註冊通知函式,以接聽此 DependencyObject 實例上特定 DependencyProperty 的變更。 (繼承來源 DependencyObject) |
SetValue(DependencyProperty, Object) |
設定 DependencyObject 上相依性屬性的本機值。 (繼承來源 DependencyObject) |
UnregisterPropertyChangedCallback(DependencyProperty, Int64) |
取消先前透過呼叫 RegisterPropertyChangedCallback 註冊的變更通知。 (繼承來源 DependencyObject) |