You need use behavior or extend Popup (ToolTip).
public override void OnApplyTemplate()
{
base.OnApplyTemplate();
var method = typeof(FrameworkElement).GetMethod("AddLogicalChild", BindingFlags.Instance | BindingFlags.NonPublic);
method.Invoke(_coreParent, new object[] { Parent });
}
When you create your class you need set coreParent. It works. After it you can use RelativeSource like if your popup or tooltip is child of your control