When you subsribe to DataEvents you'll get a reference to the data in question directly from the DataEventArgs. Try instead
var page = dataEventArgs.GetData<IPage>();
var page = dataEventArgs.GetData<IPage>();