日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
各種常見(jiàn)WPF屬性概念淺析

WPF屬性在學(xué)習(xí)WPF的過(guò)程中是一個(gè)非常重要的知識(shí)點(diǎn)。我們?cè)谶@里將會(huì)為大家詳細(xì)介紹一些常見(jiàn)的WPF屬性,希望對(duì)大家有所幫助。#t#

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)永安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上千余家企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

依賴項(xiàng)屬性

Windows Presentation Foundation (WPF) 提供了一組服務(wù),這些服務(wù)可用于擴(kuò)展公共語(yǔ)言運(yùn)行庫(kù) (CLR) 屬性的功能。
這些服務(wù)通常統(tǒng)稱為WPF屬性系統(tǒng)。

由WPF屬性系統(tǒng)支持的屬性稱為依賴項(xiàng)屬性。

依賴項(xiàng)屬性的用途在于提供一種方法來(lái)基于其他輸入的值計(jì)算屬性值。

這些其他輸入可以包括

系統(tǒng)屬性(如主題和用戶***項(xiàng))、實(shí)時(shí)屬性確定機(jī)制(如數(shù)據(jù)綁定和動(dòng)畫(huà)/演示圖板)、重用模板(如資源和樣式)或者通過(guò)與元素樹(shù)中其他元素的父子關(guān)系來(lái)公開(kāi)的值。

另外,可以通過(guò)實(shí)現(xiàn)依賴項(xiàng)屬性來(lái)提供獨(dú)立驗(yàn)證、默認(rèn)值、監(jiān)視其他屬性的更改的回調(diào)以及可以基于可能的運(yùn)行時(shí)信息來(lái)強(qiáng)制指定屬性值的系統(tǒng)。

派生類還可以通過(guò)重寫(xiě)依賴項(xiàng)屬性元數(shù)據(jù)(而不是重寫(xiě)現(xiàn)有屬性的實(shí)際實(shí)現(xiàn)或者創(chuàng)建新屬性)來(lái)更改現(xiàn)有屬性的某些具體特征。

下面匯集了在本軟件開(kāi)發(fā)工具包 (SDK) 文檔中,在討論依賴項(xiàng)屬性時(shí)所使用的術(shù)語(yǔ):

依賴項(xiàng)屬性:一個(gè)由 DependencyProperty 支持的屬性。

依賴項(xiàng)屬性標(biāo)識(shí)符:一個(gè) DependencyProperty 實(shí)例,在注冊(cè)依賴項(xiàng)屬性時(shí)作為返回值獲得,之后將存儲(chǔ)為一個(gè)類成員。在與WPF屬性系統(tǒng)交互的許多 API 中,此標(biāo)識(shí)符用作一個(gè)參數(shù)。

CLR“包裝”:屬性的實(shí)際 get 和 set 實(shí)現(xiàn)。這些實(shí)現(xiàn)通過(guò)在 GetValue 和 SetValue 調(diào)用中使用依賴項(xiàng)屬性標(biāo)識(shí)符來(lái)合并此標(biāo)識(shí)符,從而使用 WPF 屬性系統(tǒng)為屬性提供支持。

附加屬性

附加屬性是可擴(kuò)展應(yīng)用程序標(biāo)記語(yǔ)言 (XAML) 定義的一個(gè)概念。

附加屬性旨在用作可在任何對(duì)象上設(shè)置的一類全局屬性。

在 Windows Presentation Foundation (WPF) 中,附加屬性通常定義為沒(méi)有常規(guī)屬性“包裝”的一種特殊形式的依賴項(xiàng)屬性。

附加屬性是一種類型的屬性,它支持 XAML 中的專用語(yǔ)法。

附加屬性通常與公共語(yǔ)言運(yùn)行庫(kù) (CLR) 屬性不具有 1:1 對(duì)應(yīng)關(guān)系,而且不一定是依賴項(xiàng)屬性。

附加屬性的典型用途是使子元素可以向其父元素報(bào)告屬性值,即使父元素和子元素的類成員列表中均沒(méi)有該屬性也是如此。
一個(gè)主要方案是,使子元素可以將其在 UI 中的表示方式通知給父級(jí);

在 Windows Presentation Foundation (WPF) 中,WPF 類型上存在的大多數(shù)附加屬性都實(shí)現(xiàn)為依賴項(xiàng)屬性。

附加屬性是一個(gè) XAML 概念,而依賴項(xiàng)屬性則是一個(gè) WPF 概念。

因?yàn)?WPF 附加屬性是依賴項(xiàng)屬性,所以它們支持依賴項(xiàng)屬性概念,例如,屬性元數(shù)據(jù)以及這些屬性元數(shù)據(jù)中的默認(rèn)值。

盡管可以在任何對(duì)象上設(shè)置附加屬性,但這并不自動(dòng)意味著設(shè)置該屬性會(huì)產(chǎn)生實(shí)際的結(jié)果,或者該值將會(huì)被其他對(duì)象使用。通常,附加屬性是為了使來(lái)自各種可能的類層次結(jié)構(gòu)或邏輯關(guān)系的對(duì)象都可以向所屬類型報(bào)告公用信息。

定義附加屬性的類型通常采用以下模型之一:

設(shè)計(jì)定義附加屬性的類型,以便它可以是將為附加屬性設(shè)置值的元素的父元素。之后,該類型將在內(nèi)部邏輯中循環(huán)訪問(wèn)其子元素,獲取值,并以某種方式作用于這些值。

定義附加屬性的類型將用作各種可能的父元素和內(nèi)容模型的子元素。

定義附加屬性的類型表示一個(gè)服務(wù)。其他類型為該附加屬性設(shè)置值。之后,當(dāng)在服務(wù)的上下文中計(jì)算設(shè)置該屬性的元素時(shí),將通過(guò)服務(wù)類的內(nèi)部邏輯獲取附加屬性的值。

如果您的類將附加屬性嚴(yán)格定義為用于其他類型,那么該類不必從 DependencyObject 派生。但是,如果您遵循使附加屬性同時(shí)也是一個(gè)依賴項(xiàng)屬性的整體 WPF 模型,則需要從 DependencyObject 派生。

通過(guò)聲明一個(gè) DependencyProperty 類型的 public static readonly 字段將附加屬性定義為一個(gè)依賴項(xiàng)屬性。

通過(guò)使用 RegisterAttached 方法的返回值來(lái)定義此字段。

為了遵循命名標(biāo)識(shí)字段及其所表示的屬性的已建立 WPF 模式,字段名必須與附加屬性名一致,并附加字符串 Property。

WPF屬性中的附加屬性提供程序還必須提供靜態(tài)的 Get屬性名 和 Set屬性名 方法作為附加屬性訪問(wèn)器,否則會(huì)導(dǎo)致屬性系統(tǒng)無(wú)法使用您的附加屬性。


標(biāo)題名稱:各種常見(jiàn)WPF屬性概念淺析
文章URL:http://www.5511xx.com/article/cohgdsj.html