using ComPDFKit.NativeMethod; using ComPDFKitViewer.PdfViewer; using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace compdfkit_tools.PDFControlUI { /// /// pdfpageturning.xaml 的交互逻辑 /// public partial class CPDFPageTurningUI : UserControl, INotifyPropertyChanged { public Key EnsureKey { get; set; } /// /// 跳转指定页事件 /// public event EventHandler GoToSpecificPageEvent; /// /// 跳转下一页事件 /// public event EventHandler GoToNextPageEvent; /// /// 跳转上一页事件 /// public event EventHandler GoToPreviousPageEvent; /// /// 跳转首页 /// public event EventHandler GoToFirstPageEvent; /// /// 跳转末页 /// public event EventHandler GotoLastPageEvent; /// /// 当前页码 /// private int _pageIndex = 1; public int PageIndex { get { return _pageIndex; } set { if (_pageIndex != value) { _pageIndex = value; OnPropertyChanged(nameof(PageIndex)); } } } public CPDFPageTurningUI() { InitializeComponent(); DataContext = this; } /// /// 回车跳转指定页 /// /// /// private void PageIndexTexBox_KeyDown(object sender, KeyEventArgs e) { if (e.Key == EnsureKey) { GoToSpecificPageEvent?.Invoke(sender, PageIndex); } } private void GoToPreviousPageButton_Click(object sender, RoutedEventArgs e) { GoToPreviousPageEvent?.Invoke(sender, e); } private void GoToNextPageButton_Click(object sender, RoutedEventArgs e) { GoToNextPageEvent?.Invoke(sender, e); } public event PropertyChangedEventHandler PropertyChanged; protected void OnPropertyChanged(string propertyName) { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName)); } } }