private static void InvalidatePosition(Windows.Popup popup)
{
if (popup.IsOpen)
{
PositionPopup(popup);
}
popup.Opened -= OnPopupOpened;
popup.Opened += OnPopupOpened;
var child = GetPlacementChild(popup) ?? popup.Child as FrameworkElement;
if (child != null)
{
SetPopup(child, popup);
child.SizeChanged -= OnChildSizeChanged;
child.SizeChanged += OnChildSizeChanged;
}
}