public MainWindow() { InitializeComponent(); var version = GetType().Assembly.GetName().Version.ToString(3); Title = $"WPF PDFium Viewer Demo v{version}"; CurrentProcess = Process.GetCurrentProcess(); Cts = new CancellationTokenSource(); DataContext = this; Renderer.PropertyChanged += delegate { OnPropertyChanged(nameof(Page)); OnPropertyChanged(nameof(ZoomPercent)); }; MemoryChecker = new System.Windows.Threading.DispatcherTimer(); MemoryChecker.Tick += OnMemoryChecker; MemoryChecker.Interval = new TimeSpan(0, 0, 1); MemoryChecker.Start(); SearchManager = new PdfSearchManager(Renderer); MatchCaseCheckBox.IsChecked = SearchManager.MatchCase; WholeWordOnlyCheckBox.IsChecked = SearchManager.MatchWholeWord; HighlightAllMatchesCheckBox.IsChecked = SearchManager.HighlightAllMatches; }
public SearchForm(PdfRenderer renderer) { if (renderer == null) { throw new ArgumentNullException(nameof(renderer)); } InitializeComponent(); _searchManager = new PdfSearchManager(renderer); _matchCase.Checked = _searchManager.MatchCase; _matchWholeWord.Checked = _searchManager.MatchWholeWord; _highlightAll.Checked = _searchManager.HighlightAllMatches; }
public bool Search(string text, bool matchCase = false, bool matchWholeWord = false, bool highlight = false) { Cursor.Current = Cursors.WaitCursor; if (_searchManager == null) { _searchManager = new PdfSearchManager(pdfViewer.Renderer); } _searchManager.MatchCase = matchCase; _searchManager.MatchWholeWord = matchWholeWord; _searchManager.HighlightAllMatches = highlight; bool result = _searchManager.Search(text); Cursor.Current = Cursors.Default; return(result); }