我有Windows Phone 8應用程序,它顯示從服務器(類似於通訊簿)發送的人員照片和他的詳細信息。更新數據綁定集合中的特定項目
我已經實現了這一點,是通過將服務器中的圖像以獨特的名稱存儲在獨立存儲中,然後在數據庫中添加此唯一名稱和個人信息。
我實現了GUI,將數據庫綁定到LongListSelector
(使用Observable Collection)。 LongListSelector
的項目模板有一個Image
控件,我使用ValueConverter
類將唯一名稱從數據庫轉換爲圖像的物理位置。當服務器發送更新到個人信息時,我可以簡單地更新數據庫,數據綁定將自動更新UI。直到這裏一切都完美。
現在我有這種情況: 當服務器發送更新的圖像時,我只能更新隔離存儲。 如何讓GUI知道圖像已更新?我不知道如何使用這裏的數據綁定,因爲圖像名稱不會改變,並且數據庫表中沒有更新過程。
除了重新加載整個集合之外,還有其他方法嗎?
是的,我使用ViewModel類並實現INotifyPropertyChanged。我有邏輯來識別被改變的記錄。但現在,我怎樣才能爲該特定項目籌集財產變更事件?請注意,圖像的名稱(存儲在數據庫中)不會更改 – Curious
您應該在更新對象的所有屬性(名稱,人員信息等)的相同位置觸發事件。 –
我的'模型'類中的NotifyPropertyChanged函數是私有的,我從來沒有想過直接從ViewModel類中調用它。你以正確的方式指引我。我公開NotifyPropertyChanged函數,並在我知道圖像更新時從ViewModel調用它。謝謝Olivier。 – Curious