次のUserControlを作成しました。
public partial class ReplacementPatternEditor : UserControl, INotifyPropertyChanged
{
....
public static readonly RoutedEvent CollectionChanged = EventManager.RegisterRoutedEvent(
"CollectionChanged", RoutingStrategy.Bubble, typeof(RoutedEventHandler), typeof(ReplacementPatternEditor));
void RaiseCollectionChangedEvent()
{
RoutedEventArgs newEventArgs = new RoutedEventArgs(ReplacementPatternEditor.CollectionChanged);
RaiseEvent(newEventArgs);
}
...
}
ここで、xamlコード内でこのルーティングされたイベントを使用しようとすると、次のようになります。
<local:ReplacementPatternEditor ItemsSource="{Binding MyItemSource}" CollectionChanged="OnCollectionChanged"/>
コンパイル時に次のエラーが発生します:
The property 'CollectionChanged' does not exist in XML namespace 'clr-namespace:MyNamespace'
なぜこれを取得するのですか?また、ルーティングされたイベントを機能させるにはどうすればよいですか?