12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- using Microsoft.Win32;
- using Prism.Commands;
- using Prism.Mvvm;
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using ComPDFKitViewer.PdfViewer;
- using Prism.Regions;
- namespace PDF_Office.ViewModels
- {
- public class ViewContentViewModel : BindableBase
- {
- public DelegateCommand LoadFile { get; set; }
- private CPDFViewer PDFViewer { get; set; }
- public IRegionManager region;
- public ViewContentViewModel(IRegionManager regionManager)
- {
- LoadFile = new DelegateCommand(loadFile);
- region = regionManager;
- //在构造函数中使用Region需要借助Dispatcher 确保UI已经加载完成
- System.Windows.Application.Current.Dispatcher.BeginInvoke(System.Windows.Threading.DispatcherPriority.Send, new Action(() => { loadFile(); }));
- }
- private void loadFile()
- {
- OpenFileDialog openFileDialog = new OpenFileDialog();
- openFileDialog.Filter = "PDF Files (*.pdf)|*.pdf";
- if ((bool)openFileDialog.ShowDialog())
- {
- string file = openFileDialog.FileName;
- var PDFViewer = new CPDFViewer();
- PDFViewer.InitDocument(file);
- PDFViewer.Load();
- region.AddToRegion("PDFViewer", PDFViewer);
- }
- }
- }
- }
|