FrameworkPropertyMetadata 類別

定義

報告或套用相依屬性的元資料,特別是新增框架特定的屬性系統特性。

public ref class FrameworkPropertyMetadata : System::Windows::UIPropertyMetadata
public class FrameworkPropertyMetadata : System.Windows.UIPropertyMetadata
type FrameworkPropertyMetadata = class
    inherit UIPropertyMetadata
Public Class FrameworkPropertyMetadata
Inherits UIPropertyMetadata
繼承
FrameworkPropertyMetadata

範例

以下範例以特定擁有者為初始基 PropertyMetadata 型,取得依賴屬性的元資料。 該元資料會被鑄造為 FrameworkPropertyMetadata。 若 cast 回傳有效 FrameworkPropertyMetadata,則 FrameworkPropertyMetadata 各種屬性值會透過簡單的 UI(未顯示)報告。

pm = dp.GetMetadata(dp.OwnerType);
pm = dp.GetMetadata(dp.OwnerType)
FrameworkPropertyMetadata fpm = pm as FrameworkPropertyMetadata;
if (fpm!=null) {
    AffectsArrange.Text = (fpm.AffectsArrange) ? "Yes" : "No";
    AffectsMeasure.Text = (fpm.AffectsMeasure) ? "Yes" : "No";
    AffectsRender.Text = (fpm.AffectsRender) ? "Yes" : "No";
    Inherits.Text = (fpm.Inherits) ? "Yes" : "No";
    IsDataBindingAllowed.Text = (fpm.IsDataBindingAllowed) ? "Yes" : "No";
    BindsTwoWayByDefault.Text = (fpm.BindsTwoWayByDefault) ? "Yes" : "No";
}
Dim fpm As FrameworkPropertyMetadata = TryCast(pm, FrameworkPropertyMetadata)
If fpm IsNot Nothing Then
    AffectsArrange.Text = If((fpm.AffectsArrange), "Yes", "No")
    AffectsMeasure.Text = If((fpm.AffectsMeasure), "Yes", "No")
    AffectsRender.Text = If((fpm.AffectsRender), "Yes", "No")
        [Inherits].Text = If((fpm.Inherits), "Yes", "No")
    IsDataBindingAllowed.Text = If((fpm.IsDataBindingAllowed), "Yes", "No")
    BindsTwoWayByDefault.Text = If((fpm.BindsTwoWayByDefault), "Yes", "No")

備註

此類別由 PropertyMetadata (經 UIPropertyMetadata)衍生。 在大多數WPF框架層級應用程式開發中,FrameworkPropertyMetadata 是相依屬性元資料的類型,而非基礎元資料類型PropertyMetadataUIPropertyMetadata。 這對現有的依賴性屬性以及大多數自訂的依賴性屬性情境都適用。

此類別宣告的成員補充 PropertyMetadata 基底類別,包含各種布林屬性,這些屬性指定或報告WPF框架層級屬性系統的行為,例如屬性繼承、資料綁定與版面配置。

有幾種用於建立 FrameworkPropertyMetadata 實例的建構子簽章會使用參數 FrameworkPropertyMetadataOptionsFrameworkPropertyMetadataOptions列舉僅用於指定建構子中的初始行為,建構後FrameworkPropertyMetadata不會再暴露。 從建構實例中,你可以透過各種屬性取得或設定相應資訊,這些屬性與建構子呼叫中使用的列舉值名稱相同。

XAML 文字使用

此類別通常不用於 XAML。

建構函式

名稱 Description
FrameworkPropertyMetadata()

初始化 FrameworkPropertyMetadata 類別的新執行個體。

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)

初始化一個新的類別實例 FrameworkPropertyMetadata ,包含預設值與框架元資料選項、指定的回調、可用於防止屬性動畫的布林值,以及資料綁定的更新觸發預設值。

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項、指定的回調,以及可用來防止屬性動畫的布林值。

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項,以及指定的回調。

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項,以及指定的 PropertyChangedCallback 回調。

FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值及框架層級的元資料選項。

FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值和指定的回調。

FrameworkPropertyMetadata(Object, PropertyChangedCallback)

初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與指定的 PropertyChangedCallback 回調。

FrameworkPropertyMetadata(Object)

初始化一個以指定預設值的新 FrameworkPropertyMetadata 類別實例。

FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)

初始化該類別的新實例 FrameworkPropertyMetadata ,並使用指定的回調。

FrameworkPropertyMetadata(PropertyChangedCallback)

初始化一個新的類別實例 FrameworkPropertyMetadata ,並以指定的 PropertyChangedCallback 回調方式。

屬性

名稱 Description
AffectsArrange

取得或設定一個值,指示依賴性質是否可能影響佈局引擎操作中的排列傳遞。

AffectsMeasure

取得或設定一個值,指示依賴性質是否可能影響佈局引擎操作中的測量通過。

AffectsParentArrange

取得或設定一個值,指示依賴性質是否可能影響其父元素在佈局引擎操作中的排列通過。

AffectsParentMeasure

取得或設定一個值,指示依賴性質是否可能影響其父元素在佈局引擎操作期間的測量傳遞。

AffectsRender

取得或設定一個值,指示依賴性質是否可能以某種方式影響整體佈局,而這些方式不直接影響排列或測量,但需要重新繪製。

BindsTwoWayByDefault

取得或設定一個值,指示該屬性預設是否雙向綁定。

CoerceValueCallback

取得或設定對 CoerceValueCallback 此中繼資料中指定的實作的參考。

(繼承來源 PropertyMetadata)
DefaultUpdateSourceTrigger

當套用帶有此元資料的屬性綁定時,取得或設定預設值 UpdateSourceTrigger ,該綁定設定 UpdateSourceTriggerDefault

DefaultValue

取得或設定相依屬性的預設值。

(繼承來源 PropertyMetadata)
Inherits

取得或設定一個值,指示依賴性質的值是否可繼承。

IsAnimationProhibited

取得或設定一個值,宣告是否應在包含的元資料實例套用的相依屬性上停用動畫。

(繼承來源 UIPropertyMetadata)
IsDataBindingAllowed

會獲得一個值,表示依賴屬性是否支援資料綁定。

IsNotDataBindable

取得或設定一個值,指示相依屬性是否支援資料綁定。

IsSealed

會得到一個值,判斷該中繼資料是否以某種方式套用到某屬性上,導致該中繼資料實例的不可變狀態。

(繼承來源 PropertyMetadata)
Journal

取得或設定一個值,指示此屬性是否包含應用程式可或應該作為日誌實作一部分儲存的日誌資訊。

OverridesInheritanceBehavior

取得或設定一個值,指示屬性值繼承評估是否應跨越邏輯元素樹的特定內容邊界。

PropertyChangedCallback

取得或設定對 PropertyChangedCallback 此中繼資料中指定的實作的參考。

(繼承來源 PropertyMetadata)
SubPropertiesDoNotAffectRender

取得或設定一個值,指示依賴屬性的子屬性是否不影響所包含物件的渲染。

方法

名稱 Description
Equals(Object)

判斷指定的 物件是否等於目前的物件。

(繼承來源 Object)
GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前實例的 Type

(繼承來源 Object)
MemberwiseClone()

建立目前 Object的淺層複本。

(繼承來源 Object)
Merge(PropertyMetadata, DependencyProperty)

使原始元資料與基礎元資料能夠合併。

OnApply(DependencyProperty, Type)

當這些中繼資料套用到某個屬性時,表示該中繼資料正在被封存時,就會被呼叫。

ToString()

傳回表示目前 物件的字串。

(繼承來源 Object)

適用於

另請參閱