Is there any other event besides
IMapEvents.FeatureClassChanged that will be fired when a layer's data source changes?
FeatureClassChanged doesn't seem to fire if the layer's previous data source was invalid (red exclamation mark next to the layer in the TOC).
Well I guess the only answer to this question is that the only event that is fired when a layer's data source changes from a broken data source is
It doesn't tell you what changed, only that something changed, which is all I really needed. I suppose if you need to know what changed you would have to cache the state of what you were looking for and check it each time this event is fired.
Well, I was going to test this using Esri's sample code from here.
However, it doesn't fire for me even when the featureclasses are not broken.