А как насчет SourceUpdated события?
EDIT
Событие SourceUpdated не срабатывает, но я попытался с ObservableCollection.CollectionChanged, и это нормально, поэтому я бы попросил дать небольшой ваш код, вот что я протестировал, надеюсь, это поможет:
public partial class Window1 : Window
{
ObservableCollection<string> items = new ObservableCollection<string>()
{
"string1","string2","string3","string4","string5"
};
public Window1()
{
InitializeComponent();
DataContext = this;
tree.ItemsSource = items;
items.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(items_CollectionChanged);
}
void items_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
{
MessageBox.Show("Event raised");
}
private void btnAddItem_Click(object sender, RoutedEventArgs e)
{
items.Add("string6");
}
}
и xaml
<StackPanel Orientation="Vertical">
<TreeView x:Name="tree" />
<Button x:Name="btnAddItem" Click="btnAddItem_Click" Content="AddItem" />
</StackPanel>