using ComPDFKitViewer; using DryIoc; using ImTools; using PDF_Office.Helper; using PDF_Office.Model.Dialog.HomePageToolsDialogs; using PDF_Office.ViewModels.Dialog.HomePageToolsDialogs; using PDF_Office.ViewModels.Dialog.HomePageToolsDialogs.HomePageBatchProcessing; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Diagnostics; using System.Windows; using System.Windows.Controls; using System.Windows.Input; using System.Windows.Interop; using System.Xml.Linq; namespace PDF_Office.Views.Dialog.HomePageToolsDialogs { /// /// Interaction logic for HomePagePictureToPDFDialogs /// public partial class HomePagePictureToPDFDialog : UserControl { private IDropTargetHelper dropHelper; private HomePagePictureToPDFDialogViewModel viewModel; public HomePagePictureToPDFDialog() { InitializeComponent(); viewModel = this.DataContext as HomePagePictureToPDFDialogViewModel; } private void Menu_Click(object sender, System.Windows.RoutedEventArgs e) { menuPop1.IsOpen = true; } private void listView_SelectionChanged(object sender, SelectionChangedEventArgs e) { IList list = listView.SelectedItems; var lists = listView.Items; System.Data.DataRowView a; viewModel.fileNamesView.Clear(); foreach (var item in list) { a = (System.Data.DataRowView)item; viewModel.fileNamesView.Add(lists.IndexOf(a)); } if (viewModel.fileNamesView.Count > 0) { viewModel.RemoveIsEnable = "True"; } else { viewModel.RemoveIsEnable = "False"; } } private void RemoveFileMenuItem_Click(object sender, System.Windows.RoutedEventArgs e) { viewModel.removepicturefile(); } private void OpenFileMenuItem_Click(object sender, System.Windows.RoutedEventArgs e) { viewModel.openfiledialog(); } private void RadioButton_Click(object sender, System.Windows.RoutedEventArgs e) { var radiobutton = sender as RadioButton; switch (radiobutton.Name.ToString()) { case "NewFilesRadioButtom": { viewModel.pictureToPDFModel.Mode = HomePagePictureToPDFDialogModel.ToPDFFileMode.NewFiles; } break; case "OneNewFileNameRadioButtom": { viewModel.pictureToPDFModel.Mode = HomePagePictureToPDFDialogModel.ToPDFFileMode.OneNewFile; } break; case "SelectFileNameRadioButton": { viewModel.pictureToPDFModel.Mode = HomePagePictureToPDFDialogModel.ToPDFFileMode.SelectFileName; } break; default: break; } } private void Grid_Drop(object sender, DragEventArgs e) { try { Point iconPoint = e.GetPosition(this); dropHelper?.Drop((System.Runtime.InteropServices.ComTypes.IDataObject)e.Data, ref iconPoint, e.Effects); } catch (Exception ex) { } string dropFile = "Drop"; if (e.Data.GetDataPresent(System.Windows.DataFormats.FileDrop)) { DropGrid.Visibility = Visibility.Collapsed; int count = ((System.Array)e.Data.GetData(System.Windows.DataFormats.FileDrop)).Length; for (int i = 0; i < count; i++) { dropFile = ((System.Array)e.Data.GetData(System.Windows.DataFormats.FileDrop)).GetValue(i).ToString(); ; //MessageBox.Show(dropFile); if (dropFile.ToLower().EndsWith("png")|| dropFile.ToLower().EndsWith("jpg")|| dropFile.ToLower().EndsWith("bmp")|| dropFile.ToLower().EndsWith("gif")|| dropFile.ToLower().EndsWith("tiff")) { viewModel.addPicture(dropFile); } } } } private void MainPage_DragEnter(object sender, DragEventArgs e) { DropGrid.Visibility = Visibility.Visible; //页面编辑和缩略图 if ((e.OriginalSource as Image) != null) return; try { if (dropHelper == null) { dropHelper = Activator.CreateInstance(Type.GetTypeFromCLSID(new Guid("4657278A-411B-11D2-839A-00C04FD918D0"))) as IDropTargetHelper; } Point iconPoint = e.GetPosition(this); dropHelper?.DragEnter(new WindowInteropHelper(Window.GetWindow(this)).Handle, (System.Runtime.InteropServices.ComTypes.IDataObject)e.Data, ref iconPoint, e.Effects); } catch (Exception ex) { } } private void MainPage_DragOver(object sender, DragEventArgs e) { if ((e.OriginalSource as Image) != null) return; try { Point iconPoint = e.GetPosition(this); dropHelper?.DragOver(ref iconPoint, e.Effects); } catch (Exception ex) { } } private void MainPage_DragLeave(object sender, DragEventArgs e) { DropGrid.Visibility = Visibility.Collapsed; if ((e.OriginalSource as Image) != null) return; try { dropHelper?.DragLeave(); } catch (Exception ex) { } } private void DeleteTemplateBtn_Click(object sender, RoutedEventArgs e) { Button deletetemplatebtn = sender as Button; var ls = deletetemplatebtn.DataContext as DataRowView; if (ls != null) { viewModel.removepdffile(viewModel.ImagesDataTable.Rows.IndexOf(ls.Row)); } } } }