2012-07-23 77 views
0

這Telerik的gridview的力量結合刷新場景:的Silverlight與MVVM

我有我的網頁上一個Telerik的GridView控件,這勢必給PagedCollectionView 帶班「GekoppeldeOntvangstRegel」的項目,

這個類實現INotifyPropertyChanged

若干列具有與結合到這個類的對象一個TextBlock一個CellTemplate,像這樣:

<TextBlock Text="{Binding ConverterParameter='aantal', Converter={StaticResource GekoppeldeRegelDecimalFormatConverter}, NotifyOnValidationError=True, ValidatesOnDataErrors=True, ValidatesOnExceptions=True, ValidatesOnNotifyDataErrors=True}" HorizontalAlignment="Right" ToolTipService.ToolTip="{Binding ConverterParameter='aantal', Converter={StaticResource GekoppeldeRegelToolTipDecimalFormatConverter}}" /> 

該轉換器將「Aantal」屬性轉換爲具有特定小數位數的字符串。 當我用OnPropertyChanged(「Aantal」)代碼更新「Aantal」屬性時,綁定沒有更新(因爲文本塊綁定到整個對象,而不是屬性),所以舊值仍然可見。

當屬性更改時,如何從我的viewmodel或object刷新列內容?

當我直接綁定到「Aantal」財產一切完美(除了沒有被應用的轉換器,這是必要的)

+0

爲什麼不把文本綁定到屬性本身? – 2012-07-24 08:54:57

+0

對象「GekoppeldeOntvangstRegel」由實體框架提供,並對其他對象具有多個導航屬性。需要這些對象來確定需要在列中顯示的小數位數。這是在轉換器中完成的,因此綁定到屬性本身是不夠的。遺憾的是,轉換器不能使用綁定的轉換器參數,只有靜態值。 – Thomas 2012-07-24 09:57:02

回答

0

由於對「GekoppeldeOntvangstRegel」類我現在已經創建了幾個額外的屬性一種解決方法。

這些屬性調用轉換器並以正確的小數位數返回正確的值。 提高OnPropertyChanged的這些屬性確實可以刷新綁定。

我對這個解決方案並不滿意,但它現在可行。