protected override void OnVisualParentChanged(DependencyObject oldParent) {
var fe = oldParent as FrameworkElement;
if (fe != null) {
fe.PreviewMouseRightButtonUp -= OnContextMenuClick;
}
fe = Parent as FrameworkElement;
if (fe != null) {
fe.PreviewMouseRightButtonUp += OnContextMenuClick;
}
base.OnVisualParentChanged(oldParent);
}