Ver Fonte

ComPDFKit.Demo(win) - 处理内容编辑多选快捷键Ctrl和Shift

TangJinZhou há 7 meses atrás
pai
commit
f128f33256

+ 16 - 6
Demo/Examples/Compdfkit.Controls/Edit/ContentEditCOntrol/ContentEditControl.xaml.cs

@@ -17,7 +17,6 @@ using System.Windows.Controls.Primitives;
 using System.Windows.Forms;
 using System.Windows.Input;
 using System.Windows.Media;
-using static ComPDFKit.Tool.CPDFToolManager;
 using System.Windows.Media.Imaging;
 using ComPDFKit.Import;
 using ComPDFKit.Tool.Help;
@@ -71,8 +70,9 @@ namespace ComPDFKit.Controls.PDFControl
                 }
                 catch (Exception ex)
                 {
-
+                    return false;
                 }
+
                 return false;
             }
         }
@@ -92,7 +92,7 @@ namespace ComPDFKit.Controls.PDFControl
                 }
                 catch (Exception ex)
                 {
-
+                    return false;
                 }
 
                 return false;
@@ -114,7 +114,7 @@ namespace ComPDFKit.Controls.PDFControl
                 }
                 catch (Exception ex)
                 {
-
+                    return false;
                 }
 
                 return false;
@@ -198,6 +198,7 @@ namespace ComPDFKit.Controls.PDFControl
                 {
                     PdfViewControl.PDFViewTool.RemoveHandler(KeyDownEvent, KeyDownHandler);
                 }
+
                 KeyDownHandler = new KeyEventHandler(PDFView_KeyDown);
                 PdfViewControl.PDFViewTool.AddHandler(KeyDownEvent, KeyDownHandler, false);
             }
@@ -235,6 +236,16 @@ namespace ComPDFKit.Controls.PDFControl
             {
                 return;
             }
+
+            if (e.Key == Key.LeftShift || e.Key == Key.RightShift)
+            {
+                PdfViewControl.PDFViewTool.SetMultiSelectKey(e.Key);
+            }
+            else if (e.Key == Key.LeftCtrl || e.Key == Key.RightCtrl)
+            {
+                PdfViewControl.PDFViewTool.SetMultiSelectKey(e.Key);
+            }
+
             int pageIndex = -1;
             CPDFEditTextArea textArea = PdfViewControl.PDFToolManager.GetSelectedEditAreaObject(ref pageIndex) as CPDFEditTextArea;
             if (textArea == null)
@@ -373,6 +384,7 @@ namespace ComPDFKit.Controls.PDFControl
                     startPoint = GetPoint(textArea);
                     isUpdateStartPoint = false;
                 }
+
                 if (e.Key == Key.Left)
                 {
                     textArea.GetPreWordCharPlace();
@@ -486,8 +498,6 @@ namespace ComPDFKit.Controls.PDFControl
                     PdfViewControl.PDFToolManager.SetCreateContentEditType(CPDFEditType.EditText);
                     PdfViewControl.PDFViewTool.SetCurrentEditType(CPDFEditType.EditText);
                 }
-
-                PdfViewControl.PDFViewTool.GetCPDFViewer().UpdateRenderFrame();
             }
 
         }