Beispiel #1
0
        static void AttachListView(BalloonPopup popup, Selector trigger)
        {
            trigger.SelectionChanged += delegate(object sender, SelectionChangedEventArgs e)
            {
                if (e.AddedItems.Count == 0) return;
                if (popup.IsOpen) popup.TryClose();

                var source = trigger.SelectedItem;
                var selectedItem = (ListViewItem)trigger.ItemContainerGenerator.ContainerFromItem(source);

                popup.PlacementTarget = selectedItem;
                popup.TryOpen();
            };
        }
Beispiel #2
0
        static void AttachButton(BalloonPopup popup, Button trigger)
        {
            Window owner = Window.GetWindow(trigger);

            trigger.Click += delegate { popup.TryOpen(); };

            if (owner != null)
            {
                owner.LocationChanged += delegate { popup.TryClose(); };
                owner.SizeChanged += delegate { popup.TryClose(); };
            }
        }