Silverlight で、表示した Popup の外をクリックされたときに、Popup を閉じる方法のメモ。
// Popup 外でマウスの左ボタンが押されたら閉じる MouseButtonEventHandler handler = (sender, e) => { _popup.IsOpen = false; }; Application.Current.RootVisual.MouseLeftButtonDown += handler; popup.Closed += (sender, e) => { // 登録したイベントハンドラを削除 Application.Current.RootVisual.MouseLeftButtonDown -= handler; }; // Popup の開閉 _popup.IsOpen = !_popup.IsOpen;
簡単な DropDownMenu を自作するときに使える。