FrameworkPropertyMetadata 建構函式
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
初始化 FrameworkPropertyMetadata 類別的新執行個體。
多載
FrameworkPropertyMetadata()
初始化 FrameworkPropertyMetadata 類別的新執行個體。
public:
FrameworkPropertyMetadata();
public FrameworkPropertyMetadata();
Public Sub New ()
備註
此簽章會將所有 FrameworkPropertyMetadata 值初始化為其屬性預設值。
DefaultValue 將為 null,而各種 FrameworkPropertyMetadata 布林性質則為 false。
另請參閱
適用於
FrameworkPropertyMetadata(Object)
初始化一個以指定預設值的新 FrameworkPropertyMetadata 類別實例。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue);
public FrameworkPropertyMetadata(object defaultValue);
new System.Windows.FrameworkPropertyMetadata : obj -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型的值形式提供。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(Double.NaN);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
另請參閱
適用於
FrameworkPropertyMetadata(PropertyChangedCallback)
初始化一個新的類別實例 FrameworkPropertyMetadata ,並以指定的 PropertyChangedCallback 回調方式。
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata(System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback)
參數
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(new PropertyChangedCallback(OnCurrentReadingChanged));
適用於
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值及框架層級的元資料選項。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型的值形式提供。
元資料選項標記(數值組合 FrameworkPropertyMetadataOptions )。 這些選項指定了依賴屬性的特性,這些特性會與系統互動,例如版面配置或資料綁定。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault)
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
參數中標記為 set flags flags 的值會將與該FrameworkPropertyMetadataOptions旗標名稱相符的FrameworkPropertyMetadata屬性的布林值設為 true。 之後你可以更改元資料中屬性的值,只要該元資料尚未被套用到特定的屬性系統操作上。
另請參閱
適用於
FrameworkPropertyMetadata(Object, PropertyChangedCallback)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與指定的 PropertyChangedCallback 回調。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型的值形式提供。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged)
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
另請參閱
適用於
FrameworkPropertyMetadata(PropertyChangedCallback, CoerceValueCallback)
初始化該類別的新實例 FrameworkPropertyMetadata ,並使用指定的回調。
public:
FrameworkPropertyMetadata(System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata(System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
參數
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
- coerceValueCallback
- CoerceValueCallback
每當屬性系統呼叫 CoerceValue(DependencyProperty) 此相依屬性時,都會呼叫對處理子實作的參考。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
備註
此實作呼叫基礎初始化器,然後透過設定 屬性加入基礎 coerceValueCallback 實例。
另請參閱
適用於
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項,以及指定的 PropertyChangedCallback 回調。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型的值形式提供。
元資料選項標記(數值組合 FrameworkPropertyMetadataOptions )。 這些選項指定了依賴屬性的特性,這些特性會與系統互動,例如版面配置或資料綁定。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged)
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
參數中標記為 set flags flags 的值會將與該FrameworkPropertyMetadataOptions旗標名稱相符的FrameworkPropertyMetadata屬性的布林值設為 true。 只要中繼資料尚未套用到特定的屬性系統操作,你仍然可以更改屬性中的屬性值。
另請參閱
適用於
FrameworkPropertyMetadata(Object, PropertyChangedCallback, CoerceValueCallback)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值和指定的回調。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型提供。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
- coerceValueCallback
- CoerceValueCallback
一個指向處理程序實作的參考,當屬性系統呼叫 CoerceValue(DependencyProperty) 此相依屬性時,該實作會被呼叫。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
另請參閱
適用於
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項,以及指定的回調。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型提供。
元資料選項標記(數值組合 FrameworkPropertyMetadataOptions )。 這些選項指定了依賴屬性的特性,這些特性會與系統互動,例如版面配置或資料綁定。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
- coerceValueCallback
- CoerceValueCallback
一個指向處理器實作的參考,當屬性系統呼叫 CoerceValue(DependencyProperty) 該屬性時,該位址會被呼叫。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading)
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
參數中標記為 set flags flags 的值會將與該FrameworkPropertyMetadataOptions旗標名稱相符的FrameworkPropertyMetadata屬性的布林值設為 true。 只要中繼資料尚未套用到特定的屬性系統操作,你仍然可以更改屬性中的屬性值。
另請參閱
適用於
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean)
初始化一個新的類別實例 FrameworkPropertyMetadata ,使用提供的預設值與框架元資料選項、指定的回調,以及可用來防止屬性動畫的布林值。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型提供。
元資料選項標記(數值組合 FrameworkPropertyMetadataOptions )。 這些選項指定了依賴屬性的特性,這些特性會與系統互動,例如版面配置或資料綁定。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
- coerceValueCallback
- CoerceValueCallback
一個指向處理器實作的參考,每當屬性系統呼叫 CoerceValue(DependencyProperty) 此相依屬性時,都會被呼叫。
- isAnimationProhibited
- Boolean
true 以防止屬性系統將該資產套用的屬性動畫化。 若嘗試動畫,這些屬性會觸發來自屬性系統的執行時異常。
false 以允許該屬性的動畫化。 預設值為 false。
例外狀況
defaultValue 設定為 UnsetValue。
範例
以下範例稱此建構子簽名為:
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
參數isAnimationProhibited設定了由直接基底UIPropertyMetadata類別宣告屬性的初始值IsAnimationProhibited。
參數中標記為 set flags flags 的值會將與該FrameworkPropertyMetadataOptions旗標名稱相符的FrameworkPropertyMetadata屬性的布林值設為 true。 只要中繼資料尚未套用到特定的屬性系統操作,你仍然可以更改屬性中的屬性值。
另請參閱
適用於
FrameworkPropertyMetadata(Object, FrameworkPropertyMetadataOptions, PropertyChangedCallback, CoerceValueCallback, Boolean, UpdateSourceTrigger)
初始化一個新的類別實例 FrameworkPropertyMetadata ,包含預設值與框架元資料選項、指定的回調、可用於防止屬性動畫的布林值,以及資料綁定的更新觸發預設值。
public:
FrameworkPropertyMetadata(System::Object ^ defaultValue, System::Windows::FrameworkPropertyMetadataOptions flags, System::Windows::PropertyChangedCallback ^ propertyChangedCallback, System::Windows::CoerceValueCallback ^ coerceValueCallback, bool isAnimationProhibited, System::Windows::Data::UpdateSourceTrigger defaultUpdateSourceTrigger);
public FrameworkPropertyMetadata(object defaultValue, System.Windows.FrameworkPropertyMetadataOptions flags, System.Windows.PropertyChangedCallback propertyChangedCallback, System.Windows.CoerceValueCallback coerceValueCallback, bool isAnimationProhibited, System.Windows.Data.UpdateSourceTrigger defaultUpdateSourceTrigger);
new System.Windows.FrameworkPropertyMetadata : obj * System.Windows.FrameworkPropertyMetadataOptions * System.Windows.PropertyChangedCallback * System.Windows.CoerceValueCallback * bool * System.Windows.Data.UpdateSourceTrigger -> System.Windows.FrameworkPropertyMetadata
Public Sub New (defaultValue As Object, flags As FrameworkPropertyMetadataOptions, propertyChangedCallback As PropertyChangedCallback, coerceValueCallback As CoerceValueCallback, isAnimationProhibited As Boolean, defaultUpdateSourceTrigger As UpdateSourceTrigger)
參數
- defaultValue
- Object
依賴屬性的預設值,通常以特定類型提供。
元資料選項標記(數值組合 FrameworkPropertyMetadataOptions )。 這些選項指定了依賴屬性的特性,這些特性會與系統互動,例如版面配置或資料綁定。
- propertyChangedCallback
- PropertyChangedCallback
指的是屬性系統在屬性有效值改變時會呼叫的處理器實作。
- coerceValueCallback
- CoerceValueCallback
一個指向處理器實作的參考,當屬性系統呼叫 CoerceValue(DependencyProperty) 該屬性時,該位址會被呼叫。
- isAnimationProhibited
- Boolean
true 以防止屬性系統將該資產套用的屬性動畫化。 若嘗試動畫,這些屬性會觸發來自屬性系統的執行時異常。 預設值為 false。
- defaultUpdateSourceTrigger
- UpdateSourceTrigger
UpdateSourceTrigger當套用該UpdateSourceTrigger性質的綁定時,該綁定的集合Default為 。
例外狀況
defaultValue 設定為 UnsetValue。
範例
static FrameworkPropertyMetadata fpm;
fpm = new FrameworkPropertyMetadata(
Double.NaN,
(FrameworkPropertyMetadataOptions.AffectsRender |
FrameworkPropertyMetadataOptions.BindsTwoWayByDefault),
new PropertyChangedCallback(OnCurrentReadingChanged),
new CoerceValueCallback(CoerceCurrentReading),
true //Animation prohibited
, UpdateSourceTrigger.PropertyChanged
);
備註
所提供的 defaultValue 值型必須與原始相依屬性註冊中指定的類型相符或相關,該屬性將被套用該元資料。 元資料預設值類型與所套用相依屬性類型不匹配時,難以除錯,因為編譯過程中無法偵測到不匹配。 屬性系統直到執行時才會評估屬性的有效價值,因此預設值類型與屬性類型不符的結果即為執行時錯誤。
該值 UnsetValue 在屬性系統中具有特殊意義,不能作為相依屬性的預設值。
參數isAnimationProhibited設定了由直接基底UIPropertyMetadata類別宣告屬性的初始值IsAnimationProhibited。
欲了解更多關於綁定更新來源行為的資訊,請參閱 資料綁定概覽。
參數中標記為 set flags flags 的值會將與該FrameworkPropertyMetadataOptions旗標名稱相符的FrameworkPropertyMetadata屬性的布林值設為 true。 只要中繼資料尚未套用到特定的屬性系統操作,你仍然可以更改屬性中的屬性值。