private void SearchPictureButton_Click(object sender, RoutedEventArgs e) { ListBoxItem lbi = VisualTreeExtensions.FindParent <ListBoxItem>(e.OriginalSource as DependencyObject); PersonGroupViewItem pgvi = lbi.DataContext as PersonGroupViewItem; Canvas overlayPopupCanvas = VisualTreeExtensions.FindVisualChildByName <Canvas>(Window.GetWindow(this), "OverlayPopupCanvas"); PictureSearchUserControl pictureSearchPopup = new PictureSearchUserControl(); pictureSearchPopup.Width = 620; pictureSearchPopup.Height = 180; DropShadowEffect dse = new DropShadowEffect(); dse.Color = Colors.LightGray; pictureSearchPopup.Effect = dse; overlayPopupCanvas.Children.Clear(); overlayPopupCanvas.Children.Add(pictureSearchPopup); pictureSearchPopup.SetValue(Canvas.TopProperty, Mouse.GetPosition(overlayPopupCanvas).Y); pictureSearchPopup.SetValue(Canvas.LeftProperty, Mouse.GetPosition(overlayPopupCanvas).X); overlayPopupCanvas.Visibility = System.Windows.Visibility.Visible; pictureSearchPopup.Search(pgvi.Name); pictureSearchPopup.PictureSelected += new EventHandler(PictureSearchPopup_PictureSelected); pictureSearchPopup.CloseClicked += new EventHandler(PictureSearchPopup_CloseClicked); }
void PictureSearchPopup_CloseClicked(object sender, EventArgs e) { Canvas overlayPopupCanvas = VisualTreeExtensions.FindVisualChildByName <Canvas>(Window.GetWindow(this), "OverlayPopupCanvas"); overlayPopupCanvas.Children.Clear(); overlayPopupCanvas.Visibility = System.Windows.Visibility.Collapsed; }
void PictureSearchPopup_PictureSelected(object sender, EventArgs e) { PictureSearchUserControl psp = sender as PictureSearchUserControl; if (psp.SelectedItem != null) { BitmapImage bi = psp.DownloadSelectedImage(); if (bi != null) { PersonGroupViewItem pgvi = itemsControl.SelectedItem as PersonGroupViewItem; string filename = Misc.GetCDCoverFilename(Misc.FilterFilenameChars(pgvi.Name) + ".jpg"); FileStream stream = new FileStream(filename, FileMode.Create); JpegBitmapEncoder encoder = new JpegBitmapEncoder(); encoder.QualityLevel = 30; encoder.Frames.Add(BitmapFrame.Create(bi)); encoder.Save(stream); stream.Close(); DataBase.SetPersonGroupImage(pgvi.ID, filename); UpdateRow(pgvi); } } Canvas overlayPopupCanvas = VisualTreeExtensions.FindVisualChildByName <Canvas>(Window.GetWindow(this), "OverlayPopupCanvas"); overlayPopupCanvas.Children.Clear(); overlayPopupCanvas.Visibility = System.Windows.Visibility.Collapsed; }
private void Grid_MouseEnter(object sender, MouseEventArgs e) { Button searchPictureButton = VisualTreeExtensions.FindVisualChildByName <Button>(sender as DependencyObject, "SearchPictureButton"); if (searchPictureButton == null) { searchPictureButton = FindResource("mySearchPictureButton") as Button; theGrid.Children.Add(searchPictureButton); } Button showPictureButton = VisualTreeExtensions.FindVisualChildByName <Button>(sender as DependencyObject, "ShowPictureButton"); if (showPictureButton == null) { showPictureButton = FindResource("myShowPictureButton") as Button; theGrid.Children.Add(showPictureButton); } if (this.buttonChoosePicture.Visibility == System.Windows.Visibility.Visible) { searchPictureButton.BeginAnimation(Button.OpacityProperty, new DoubleAnimation(1, TimeSpan.FromMilliseconds(500).Duration())); searchPictureButton.Visibility = System.Windows.Visibility.Visible; showPictureButton.Visibility = System.Windows.Visibility.Collapsed; } else { showPictureButton.BeginAnimation(Button.OpacityProperty, new DoubleAnimation(1, TimeSpan.FromMilliseconds(500).Duration())); searchPictureButton.Visibility = System.Windows.Visibility.Collapsed; showPictureButton.Visibility = System.Windows.Visibility.Visible; } }
private void SearchImage() { PictureSearchPopup pictureSearchPopup = new PictureSearchPopup(); pictureSearchPopup.PopupAnimation = System.Windows.Controls.Primitives.PopupAnimation.Fade; pictureSearchPopup.IsOpen = true; pictureSearchPopup.Placement = System.Windows.Controls.Primitives.PlacementMode.Bottom; Button searchPictureButton = VisualTreeExtensions.FindVisualChildByName <Button>(this, "SearchPictureButton"); if (searchPictureButton != null) { pictureSearchPopup.PlacementTarget = searchPictureButton; } else { pictureSearchPopup.PlacementTarget = this; } pictureSearchPopup.Width = 640; pictureSearchPopup.Height = 200; pictureSearchPopup.StaysOpen = false; pictureSearchPopup.PictureSelected += new EventHandler(pictureSearchPopup_PictureSelected); string searchText = GetSearchText(); pictureSearchPopup.Search(searchText); }
private void Grid_MouseLeave(object sender, MouseEventArgs e) { if (this.buttonChoosePicture.Visibility == System.Windows.Visibility.Visible) { Button b = VisualTreeExtensions.FindVisualChildByName <Button>(sender as DependencyObject, "SearchPictureButton"); b.BeginAnimation(Button.OpacityProperty, new DoubleAnimation(0, TimeSpan.FromMilliseconds(500).Duration())); } else { Button b = VisualTreeExtensions.FindVisualChildByName <Button>(sender as DependencyObject, "ShowPictureButton"); b.BeginAnimation(Button.OpacityProperty, new DoubleAnimation(0, TimeSpan.FromMilliseconds(500).Duration())); } }
private void ButtonZoom_Click(object sender, RoutedEventArgs e) { Button btn = sender as Button; Image img = VisualTreeExtensions.FindVisualChildByName <Image>(btn, "ImageZoom"); if (!IsZoomed) { img.Source = ImageLoader.FromResource("ZoomOut.png"); ButtonZoom.ToolTip = StringTable.ZoomOutChart; } else { img.Source = ImageLoader.FromResource("ZoomIn.png"); ButtonZoom.ToolTip = StringTable.ZoomInChart; } ChartCommands.ZoomChart.Execute(this, this); }
private void ContextMenu_Opened(object sender, RoutedEventArgs e) { ContextMenu contextMenu = sender as ContextMenu; MenuItem menuItemPaste = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemPaste"); MenuItem menuItemCopy = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemCopy"); MenuItem menuItemDelete = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemDelete"); MenuItem menuItemShowImage = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemShowImage"); MenuItem menuItemEditImage = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemEditImage"); MenuItem menuItemLoadFromWeb = VisualTreeExtensions.FindVisualChildByName <MenuItem>(contextMenu, "menuItemLoadFromWeb"); menuItemCopy.IsEnabled = (image.Source != null); menuItemDelete.IsEnabled = (image.Source != null); menuItemShowImage.IsEnabled = (image.Source != null); menuItemEditImage.IsEnabled = (image.Source != null); menuItemPaste.IsEnabled = (Clipboard.ContainsImage()); menuItemLoadFromWeb.IsEnabled = enableLoadFromWeb; }
private void DockPanelMultiLineEdit_MouseLeave(object sender, RoutedEventArgs e) { Button row = VisualTreeExtensions.FindVisualChildByName <Button>(e.OriginalSource as DependencyObject, "MultiLineEditButton"); row.Visibility = System.Windows.Visibility.Collapsed; }