2013-04-09 20 views
1

我写为Windows 8的应用程序,我有一个名为GroupedItemsPage一个UI类从LayoutAwarePage继承包含数据:如何捕获绑定的数据更新事件?

this.DefaultViewModel["Groups"] = sampleDataGroups; 

在sampleDataGroups每个项目都绑定在UI的瓦片与sampleDataGroups是类从BindableBase继承和每个属性使用

set{this.SetProperty(ref this._property, value); } 

设置我想什么做的是能够在我的UI类GroupedItemsPage每次赶上一般事件sampleDataGroups属性改变(让我可以重写sampleDataG群组到一个文件)。我已经做了一些研究,我只真正找到了如何获取sampleDataGroups捕获的通知事件,但是如果我想sampleDataGroups通知GroupedItemsPage

+0

你可以使用'PropertyChanged'事件 – Sushil 2013-04-09 06:44:54

+0

@Sushil你能否详细说明一下?我看着PropertyChanged事件,但它似乎必须在我的sampleDataGroups类而不是GroupedItemsPage中实现。 – foboi1122 2013-04-09 17:57:34

+0

就像下面Filip提到的那样,它最好的做法是将文件保存在视图模型类中。你可以在通用文件夹的BindableBase类中检查'OnPropertyChanged'方法,你可以在sampleDataGroups中覆盖它 - 在这里放置代码以保存内容到文件,并调用基类impl。 – Sushil 2013-04-10 03:53:24

回答

1

您的页面不应将数据写入文件。相反,它更多地是视图模型或模型的责任。如果你真的需要,那么你将需要订阅你的sampleDataGroups变量类型声明的PropertyChanged事件,并在页面对象中处理事件。