天天看點

【翻譯】WPF4.5新特性(MSDN的翻譯讀不太懂)

我很在意WPF的發展,有人說微軟不再維護WPF了,無所謂,随他去。

下面是我的翻譯:

Ribbon Control:

顯示大量分組資料性能提升:

當螢幕上需要呈現大量的分組資料時,UI可以進行界面虛拟化。

VirtualizingPanel類定義了IsVirtualizingWhenGrouping屬性。

這個屬性可以使UI在呈現分組資料時進行界面虛拟化。

如果你想了解分組資料的更多資訊,

請看:“怎樣用xaml為分組資料排序”(譯注:這個MSDN上就沒給對外連結接)

如果你想了解虛拟化呈現分組資料的的相關資訊

針對VirtualizingPanel的新特性

1.

2.

這個緩存是VirtualizingPanel不适用虛拟化的方式呈現資料之前或之後的緩存空間

使用緩存是為了避免在使用者滾動滾動條時呈現界面元素。以此提示使用者滾動滾動條時界面的響應速度。

.NET在配置設定這個緩存時使用了一個較低的優先權。以免使用者在作業系統時界面反應遲鈍。

綁定到靜态屬性

WPF支援綁定到靜态屬性,

資料綁定引擎監控靜态屬性,一旦靜态屬性的值發生改變,将會觸發一個指定的事件

例如:

如果有一個類,取名叫做SomeClass;

它有一個靜态屬性,取名叫做MyProperty;

在這個類内部可以按如方式定義靜态事件:

當MyProperty的值改變時,這個事件将被觸發。

注意:

第一:事件的名字必須為:[靜态屬性名]changed

第二:SomeClass類必須包含一個名為StaticPropertyChanged的事件(定義方式如下), 

在非UI線程通路集合

你可以在一個非UI線程中通路和修改UI線程中的集合資料。

這樣你就可以使用背景線程從UI線程中接收資料。

當你使用另一個線程修改資料集合的時候,展現在使用者界面上的資料也會被相應的修改。

驗證資料正确性

這個接口會異步驗證使用者錄入的資訊,并把結果展現在界面上。

這個接口也支援自定義錯誤對象,在一個屬性上定義多個驗證邏輯,跨屬性的驗證邏輯(譯注:一個屬性的值導緻另一個屬性驗證不通過)

還有實體層面的錯誤(譯注:enty-level errors這一句不知道是什麼意思)

要想了解更多資訊,請看:http://msdn.microsoft.com/en-us/library/vstudio/system.componentmodel.inotifydataerrorinfo

延遲更新資料綁定的資料源

這樣當一個使用者滑動這個slider的時候,slider滑塊的位置每改變一個像素,資料源都要發生相應的更改。

其實,我們隻需要在slider停止滑動的時候更新資料源就可以了。

為了避免資料源被頻繁的更新,可以使用delay屬性來解決這個問題(譯注:這裡是挺長的一句,懶得翻譯了)。

綁定到實作了ICustomTypeProvider接口的類型

----------------------------------------------

還有一些特性沒有翻譯,下一篇再翻譯吧

繼續閱讀