子要素をポップアップ形式で表示するためのコントロールです。
ページ内リンク
IsOpen プロパティ
Popup コントロールは Child プロパティを持ち、
このプロパティに指定された子要素をポップアップ形式で表示します。
その表示/非表示を切り替えるのは IsOpen プロパティで、
true のときに子要素を指定された位置に表示します。
この例では、Popup コントロールの表示が有効のまま他のウィンドウがアクティブになると、
Popup コントロールが表示されたままとなるため、
関係ない UI と重なってしまうことになります。
他のウィンドウをアクティブにしたときに自動的に Popup コントロールを非表示にする場合は StaysOpen プロパティを false にします。
PlacementTarget プロパティと Placement プロパティ
上記の例では、Popup コントロールの表示位置を特に指定していないため、
Popup コントロールの親要素である Grid コントロールの下部に表示されます。
表示位置を変更するには、PlacementTarget プロパティと Placement プロパティを指定します。
PlacementTarget プロパティには基準とするコントロール、
Placement プロパティには PlacementMode 列挙体を指定します。
PlacementTarget プロパティにはコントロールを指定しなければならないため、
データバインド機能を使って、ElementName を使用することで指定します。
Placement プロパティには様々な位置を指定することができます。
また、この他にも配置に関するプロパティがあります。
詳しくは MSDN の「ポップアップの配置動作」等を参照して下さい。