Silverlight の Popup

Silverlight でも Popup クラスが提供されています。使い方はこんな感じ。

System.Windows.Controls.Primitives.Popup popup
    = new System.Windows.Controls.Primitives.Popup();
popup.Child = 表示するコントロール;
popup.HorizontalOffset = 100; // Silverlight コントロールの左上端からの水平距離
popup.VerticalOffset = 100;   // Silverlight コントロールの左上端からの垂直距離
popup.IsOpen = true;          // 表示!

Silverlight コントロールの左上端からの距離を指定する必要があるので、非常に使い勝手が悪いです。WPF だと任意のコントロールを基準としてどの方向に表示するかを指定できるのに…。

この仕様は WPF の方に合わせて欲しかったな。