Prechádzať zdrojové kódy

阅读页-选择文本右键菜单-初版

OYXH\oyxh 2 rokov pred
rodič
commit
fef656df44

+ 6 - 0
PDF Office/Styles/ContextMenuStyle.xaml

@@ -187,6 +187,12 @@
         <MenuItem Name="MenuErase" Header="Erase Redactions" />
     </ContextMenu>
 
+    <Separator
+        x:Key="Separator"
+        Height="1"
+        BorderBrush="#33000000"
+        BorderThickness="1"
+        Style="{StaticResource {x:Static ToolBar.SeparatorStyleKey}}" />
     <!--  阅读页点击空白处菜单  -->
     <ContextMenu x:Key="ViewerContextMenu" FontSize="14">
         <MenuItem

+ 1 - 1
PDF Office/ViewModels/PropertyPanel/AnnotPanel/LinkAnnotPropertyViewModel.cs

@@ -1026,7 +1026,7 @@ namespace PDF_Office.ViewModels.PropertyPanel.AnnotPanel
                 document = pdfViewer.Document;
                 totalPage = pdfViewer.Document.PageCount;
 
-                if (viewContentViewModel.IsCreateLink)
+                if (viewContentViewModel.IsRightMenuCreateLink)
                 {
                     SetTextBoxEnableOrNot(true, totalPage);
                 }

+ 23 - 23
PDF Office/ViewModels/Tools/AnnotToolContentViewModel.Command.cs

@@ -26,6 +26,7 @@ namespace PDF_Office.ViewModels.Tools
     public sealed partial class AnnotToolContentViewModel : BindableBase, INavigationAware
     {
         #region 事件绑定和解绑
+
         private void BindingEvent()
         {
             //属性面板与注释工具栏绑定:属性面板的属性变化,会同步注释工具栏的属性值
@@ -66,6 +67,7 @@ namespace PDF_Office.ViewModels.Tools
                 PDFViewer.SnapshotCommandHandler += PDFViewer_SnapshotCommandHandler;
             }
         }
+
         private void UnBindingPDFViewerHandler()
         {
             if (PDFViewer != null)
@@ -77,9 +79,11 @@ namespace PDF_Office.ViewModels.Tools
                 PDFViewer.SnapshotCommandHandler -= PDFViewer_SnapshotCommandHandler;
             }
         }
-        #endregion
+
+        #endregion 事件绑定和解绑
 
         #region PDFViewer事件
+
         //选中和非选中注释,右键菜单
         private void PDFViewer_AnnotActiveHandler(object sender, AnnotAttribEvent e)
         {
@@ -151,7 +155,7 @@ namespace PDF_Office.ViewModels.Tools
                                 break;
 
                             case AnnotArgsType.AnnotLink:
-                                viewContentViewModel.IsCreateLink = false;
+                                //viewContentViewModel.IsCreateLink = false;
                                 GetLink(annot as LinkAnnotArgs, e);
 
                                 break;
@@ -162,25 +166,15 @@ namespace PDF_Office.ViewModels.Tools
                         }
                         //记录这次选中的注释,之后创建注释会跟随上次选中注释的属性值
                         PDFViewer.SetToolParam(annot);
-
                     }
                     else if (e.AnnotItemsList.Count == 1 && e.IsAnnotCreateReset == true)
                     {
                         switch (annot.EventType)
                         {
                             case AnnotArgsType.AnnotLink:
-                                viewContentViewModel.IsCreateLink = false;
+                                //viewContentViewModel.IsCreateLink = false;
                                 GetLink(annot as LinkAnnotArgs, e);
                                 break;
-
-                                //case AnnotArgsType.AnnotStamp://图章
-                                //    GetStamp();
-                                //    break;
-
-                                //case AnnotArgsType.AnnotStamp://签名
-                                //    annotArgs = GetSignature();
-                                //    isTemplateAnnot = true;
-                                //    break;
                         }
                         PDFViewer.SetToolParam(annot);
                         //TODO: 设计已重新调整为:修改注释后,会作用到之后添加的注释中。因此先把此逻辑“创建注释后,会自动回到默认值”注释掉
@@ -195,7 +189,15 @@ namespace PDF_Office.ViewModels.Tools
                         //        }
                         //    }
                         //}
-                        ShowPropertyPanel();
+                        //设计重新调整,阅读页空白处,右键菜单,添加链接,和pro mac一样的效果,不显示属性栏
+                        if (isRightMenuAddAnnot)
+                        {
+                            ShowPropertyPanel(false);
+                        }
+                        else
+                        {
+                            ShowPropertyPanel();
+                        }
                     }
                 }
             }
@@ -253,7 +255,7 @@ namespace PDF_Office.ViewModels.Tools
                     break;
             }
         }
-        
+
         private void PDFViewer_SnapshotCommandHandler(object sender, SnapshotCommandArgs e)
         {
             SnapshotEditToolArgs snapToolArgs = (SnapshotEditToolArgs)PDFViewer.ToolManager.CurrentAnnotArgs;
@@ -310,6 +312,7 @@ namespace PDF_Office.ViewModels.Tools
                 }
             }
         }
+
         private void SnapshotEditMenuViewModel_SnapToolEvent(object sender, KeyValuePair<string, object> e)
         {
             switch (e.Key)
@@ -356,7 +359,6 @@ namespace PDF_Office.ViewModels.Tools
             }
         }
 
-
         private void PDFViewer_AnnotEditHandler(object sender, List<AnnotEditEvent> e)
         {
             if (e != null && e.Count > 0)
@@ -427,12 +429,13 @@ namespace PDF_Office.ViewModels.Tools
         private void PDFViewer_WidgetClickHander(object sender, WidgetArgs e)
         {
         }
-        #endregion
+
+        #endregion PDFViewer事件
 
         #region BindingEvent事件
+
         private void AnnotProperty_DefaultStored(object sender, object e)
         {
-
         }
 
         private void AnnotPropertyPanel_AnnotTypeChanged(object sender, Dictionary<AnnotArgsType, object> e)
@@ -564,7 +567,6 @@ namespace PDF_Office.ViewModels.Tools
                                     annotAttribsList[AnnotAttrib.FillColor] = eraseArgs.UIFillColor;
                                     annotAttribsList[AnnotAttrib.Thickness] = eraseArgs.Thickness;
                                     AddToPropertyPanel("FreehandAnnotProperty", "Freehand", eraseArgs, annotAttribsList);
-
                                 }
                             }
                             break;
@@ -573,8 +575,6 @@ namespace PDF_Office.ViewModels.Tools
             }
         }
 
-        #endregion
-
+        #endregion BindingEvent事件
     }
-
-}
+}

+ 172 - 31
PDF Office/ViewModels/Tools/AnnotToolContentViewModel.Function.cs

@@ -19,8 +19,13 @@ using System.Text;
 using System.Threading.Tasks;
 using System.Windows;
 using System.Windows.Controls;
+using System.Windows.Forms;
 using System.Windows.Input;
 using System.Windows.Media;
+using ContextMenu = System.Windows.Controls.ContextMenu;
+using HorizontalAlignment = System.Windows.HorizontalAlignment;
+using MenuItem = System.Windows.Controls.MenuItem;
+using OpenFileDialog = Microsoft.Win32.OpenFileDialog;
 
 namespace PDF_Office.ViewModels.Tools
 {
@@ -29,6 +34,7 @@ namespace PDF_Office.ViewModels.Tools
         #region 初始化
 
         #region 初始化数据
+
         //初始化注释的属性值,并存在本地缓存数据集里
         private void InitDefaultValue()
         {
@@ -131,13 +137,15 @@ namespace PDF_Office.ViewModels.Tools
             ToolExpandDict.Add("Line", AnnotArgsType.AnnotLine);
             ToolExpandDict.Add("Link", AnnotArgsType.AnnotLink);
         }
-        #endregion
 
-        #endregion
+        #endregion 初始化数据
+
+        #endregion 初始化
 
         #region 注释工具
+
         //注释工具
-        private void FindAnnotTypeKey(string tag, ref AnnotHandlerEventArgs annotArgs)
+        private void FindAnnotTypeKey(string tag, ref AnnotHandlerEventArgs annotArgs, bool isRightMenuAdd = false)
         {
             switch (tag)
             {
@@ -200,7 +208,7 @@ namespace PDF_Office.ViewModels.Tools
                     break;
 
                 case "Link"://链接
-                    viewContentViewModel.IsCreateLink = false;
+                    viewContentViewModel.IsRightMenuCreateLink = isRightMenuAdd;
                     annotArgs = GetLink();
                     break;
             }
@@ -735,7 +743,7 @@ namespace PDF_Office.ViewModels.Tools
             Dictionary<AnnotAttrib, object> annotAttribsList = new Dictionary<AnnotAttrib, object>();
             annotAttribsList[AnnotAttrib.Transparency] = stampAnnotArgs.Opacity;
             AddToPropertyPanel("StampAnnotProperty", null, stampAnnotArgs, annotAttribsList);
-            return null;
+            return stampAnnotArgs;
         }
 
         /// <summary>
@@ -835,7 +843,6 @@ namespace PDF_Office.ViewModels.Tools
 
         #endregion 注释工具
 
-
         #region 属性面板
 
         /// <summary>
@@ -846,7 +853,7 @@ namespace PDF_Office.ViewModels.Tools
             viewContentViewModel.IsPropertyOpen = show;
         }
 
-        #endregion
+        #endregion 属性面板
 
         #region 菜单
 
@@ -854,11 +861,11 @@ namespace PDF_Office.ViewModels.Tools
         {
             ContextMenu contextMenu = App.Current.FindResource("ViewerContextMenu") as ContextMenu;
             //contextMenu.Loaded += ContextMenu_Loaded;
-            ContextMenu_Loaded(contextMenu, null);
+            ViewerContextMenu_Loaded(contextMenu, null);
             return contextMenu;
         }
 
-        private void ContextMenu_Loaded(object sender, RoutedEventArgs e)
+        private void ViewerContextMenu_Loaded(object sender, RoutedEventArgs e)
         {
             ContextMenu contextMenu = sender as ContextMenu;
             if (contextMenu.Items.Count > 0)
@@ -925,20 +932,12 @@ namespace PDF_Office.ViewModels.Tools
                                 break;
 
                             case "AddBookMark":
-                                //if (isAddBookMark)
-                                //{
-                                //    menuItem1.Visibility = Visibility.Visible;
-                                //}
                                 menuItem1.Click -= AddBookMark_Click;
                                 menuItem1.Click += AddBookMark_Click;
                                 SetMenuItemVisibility(menuItem1, "DelBookMark", "AddBookMark", isAddBookMark);
                                 break;
 
                             case "DelBookMark":
-                                //if (isAddBookMark == false)
-                                //{
-                                //    menuItem1.Visibility = Visibility.Visible;
-                                //}
                                 menuItem1.Click -= DelBookMark_Click;
                                 menuItem1.Click += DelBookMark_Click;
                                 SetMenuItemVisibility(menuItem1, "DelBookMark", "AddBookMark", isAddBookMark);
@@ -989,26 +988,24 @@ namespace PDF_Office.ViewModels.Tools
                         }
                     }
                 }
-
-
             }
         }
 
-        private void SetMenuItemVisibility(MenuItem menuItem1, string v2, string v3, bool flag)
+        private void SetMenuItemVisibility(MenuItem menuItem1, string right, string deny, bool flag)
         {
-            if (menuItem1.Tag.ToString() == v2 && flag)
+            if (menuItem1.Tag.ToString() == right && flag)
             {
                 menuItem1.Visibility = Visibility.Collapsed;
             }
-            if (menuItem1.Tag.ToString() == v2 && flag == false)
+            if (menuItem1.Tag.ToString() == right && flag == false)
             {
                 menuItem1.Visibility = Visibility.Visible;
             }
-            if (menuItem1.Tag.ToString() == v3 && flag == false)
+            if (menuItem1.Tag.ToString() == deny && flag == false)
             {
                 menuItem1.Visibility = Visibility.Collapsed;
             }
-            if (menuItem1.Tag.ToString() == v3 && flag)
+            if (menuItem1.Tag.ToString() == deny && flag)
             {
                 menuItem1.Visibility = Visibility.Visible;
             }
@@ -1044,7 +1041,10 @@ namespace PDF_Office.ViewModels.Tools
         {
             ContextMenu popMenu = new ContextMenu();
             popMenu.FontSize = 14;
-
+            //if (popMenu.Items.Count > 0)
+            //{
+            //    popMenu.Items.Clear();
+            //}
             MenuItem menuItem = new MenuItem();
             menuItem = new MenuItem();
             menuItem.CommandTarget = (UIElement)sender;
@@ -1056,16 +1056,157 @@ namespace PDF_Office.ViewModels.Tools
             menuItem.Command = ApplicationCommands.Paste;
             popMenu.Items.Add(menuItem);
 
+            //Separator separator = (Separator)App.Current.FindResource("Separator");
+            Separator separator = new Separator();
+            separator.Height = 1;
+            separator.BorderBrush = new SolidColorBrush((Color)ColorConverter.ConvertFromString("#33000000"));
+            separator.BorderThickness = new Thickness(1);
+            separator.Width = popMenu.Width;
+            separator.Style = (Style)App.Current.FindResource(System.Windows.Controls.ToolBar.SeparatorStyleKey);
+            popMenu.Items.Add(separator);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("高亮", "HighLight", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
             menuItem = new MenuItem();
-            menuItem.CommandTarget = (UIElement)sender;
-            menuItem.Header = "创建链接";
-            menuItem.CommandParameter = new object[] { this, annotCommand };
-            menuItem.Command = viewContentViewModel.CreateLinkCommand;
-            menuItem.Click += MenuItem_Click;
+            SetSelectTextOrImageMenuItem("下划线", "UnderLine", annotCommand, out menuItem);
             popMenu.Items.Add(menuItem);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("删除线", "Strikeout", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("文本", "Freetext", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("便签", "StickyNote", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("矩形", "Rect", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
+            menuItem = new MenuItem();
+            SetSelectTextOrImageMenuItem("添加链接", "Link", annotCommand, out menuItem);
+            popMenu.Items.Add(menuItem);
+
+            //menuItem.CommandParameter = new object[] { this, annotCommand };
+            //menuItem.Command = viewContentViewModel.CreateLinkCommand;
+            //menuItem.Click -= AddLink_Click;
+            //menuItem.Click += AddLink_Click;
+            //popMenu.Items.Add(menuItem);
             return popMenu;
         }
-        #endregion
 
+        private void AnnotToolMenu_Click(object sender, RoutedEventArgs e)
+        {
+            MenuItem clickMenu = sender as MenuItem;
+            if (clickMenu != null && clickMenu.CommandParameter is AnnotCommandArgs)
+            {
+                AnnotCommandArgs annotCommand = clickMenu.CommandParameter as AnnotCommandArgs;
+                //AnnotHandlerEventArgs annotHandlerEvent = null;
+                //FindAnnotTypeKey(clickMenu.Tag.ToString(), ref annotHandlerEvent, true);
+
+                switch (clickMenu.Tag.ToString())
+                {
+                    case "SnapshotEdit"://内容选择
+                        break;
+
+                    case "HighLight"://字体高亮
+                        TextHighlightAnnotArgs highlightArgs = (TextHighlightAnnotArgs)GetHighLight();
+                        highlightArgs.ClientRect = annotCommand.TextRect;
+                        highlightArgs.Content = annotCommand.Text;
+                        bool flag = PDFViewer.CreatePageAnnot(annotCommand.PageIndex, highlightArgs);
+                        break;
+
+                    case "UnderLine"://下划线
+
+                        break;
+
+                    case "Squiggly"://波浪线
+                        break;
+
+                    case "Strikeout"://删除线
+                        break;
+
+                    case "Freehand"://手绘
+                        break;
+
+                    case "Freetext"://文本
+                        FreeTextAnnotArgs textArgs = new FreeTextAnnotArgs();
+                        textArgs.ClientRect = annotCommand.TextRect;
+                        textArgs.Transparency = 1;
+                        textArgs.BgColor = Colors.Transparent;
+                        textArgs.LineColor = Colors.Red;
+                        textArgs.LineWidth = 2;
+                        //textArgs.TextContent = annotCommand.Text;
+                        PDFViewer.CreatePageAnnot(annotCommand.PageIndex, textArgs);
+                        break;
+
+                    case "StickyNote"://便签
+                        StickyAnnotArgs stickyAnnotArgs = (StickyAnnotArgs)GetStickyNote();
+
+                        //stickyAnnotArgs.StickyNote = annotCommand.Text;
+                        //stickyAnnotArgs.Color = annotProperty.ForgoundColor;
+                        //stickyAnnotArgs.StickyNote = annotProperty.NoteText;
+                        //stickyAnnotArgs.Transparency = annotProperty.Opacity;
+
+                        stickyAnnotArgs.ClientRect = annotCommand.TextRect;
+                        PDFViewer.CreatePageAnnot(annotCommand.PageIndex, stickyAnnotArgs);
+                        break;
+
+                    case "Rect"://矩形
+                        SquareAnnotArgs squareAnnotArgs = (SquareAnnotArgs)GetRect();
+                        squareAnnotArgs.ClientRect = annotCommand.TextRect;
+                        PDFViewer.CreatePageAnnot(annotCommand.PageIndex, squareAnnotArgs);
+                        break;
+
+                    case "Circle"://圆
+                        break;
+
+                    case "Arrow"://箭头
+                    case "Line"://线
+                        break;
+
+                    case "Stamp"://图章
+                        break;
+
+                    case "Image":
+                        break;
+
+                    case "Signature"://签名
+                        break;
+
+                    case "Link"://链接
+                        LinkAnnotArgs linkArgs = new LinkAnnotArgs();
+                        linkArgs.ClientRect = annotCommand.TextRect;
+                        linkArgs.URI = string.Empty;
+                        linkArgs.LinkType = LINK_TYPE.GOTO;
+                        linkArgs.DestIndex = annotCommand.PageIndex;
+                        PDFViewer.CreatePageAnnot(annotCommand.PageIndex, linkArgs);
+                        BtnLinkIsChecked = true;
+                        AnnotHandlerEventArgs annotArgs = GetLink(linkArgs);
+                        PDFViewer.SetMouseMode(MouseModes.AnnotCreate);
+                        PDFViewer.SetToolParam(annotArgs);
+                        viewContentViewModel.IsPropertyOpen = true;
+                        break;
+                }
+            }
+        }
+
+        private void SetSelectTextOrImageMenuItem(string header, string tag, AnnotCommandArgs annotCommand, out MenuItem menuItem)
+        {
+            menuItem = new MenuItem();
+            menuItem.Header = header;
+            menuItem.Tag = tag;
+            menuItem.Click -= AnnotToolMenu_Click;
+            menuItem.Click += AnnotToolMenu_Click;
+            menuItem.CommandParameter = annotCommand;
+        }
+
+        #endregion 菜单
     }
 }

+ 4 - 7
PDF Office/ViewModels/Tools/AnnotToolContentViewModel.Properties.cs

@@ -150,20 +150,17 @@ namespace PDF_Office.ViewModels.Tools
         private Dictionary<string, AnnotArgsType> ToolExpandDict = new Dictionary<string, AnnotArgsType>();
         private bool isHiddenAnnot = true;
         private bool isAddBookMark = true;
-        //private BookmarkContentViewModel bookmarkContentViewModel = null;
-        //private BookmarkContent bookmark = null;
-        //private BOTAContent bOTAContent = null;
+        private bool isRightMenuAddAnnot = false;
+
         #region 事件
+
         public DelegateCommand<CustomIconToggleBtn> MyToolsCommand { get; set; }
 
         private SnapshotEditMenuViewModel snapshotEditMenuViewModel = new SnapshotEditMenuViewModel();
         public SnapshotEditMenuViewModel SnapshotEditMenuViewModel { get => snapshotEditMenuViewModel; set => snapshotEditMenuViewModel = value; }
         public DelegateCommand<object> SetAddAnnotationCommand { get; set; }
 
-        #endregion
-
-
-
+        #endregion 事件
     }
 
     public enum AddAnnotType

+ 24 - 17
PDF Office/ViewModels/Tools/AnnotToolContentViewModel.cs

@@ -41,8 +41,8 @@ namespace PDF_Office.ViewModels.Tools
 {
     public sealed partial class AnnotToolContentViewModel : BindableBase, INavigationAware
     {
-
         #region 初始化
+
         public AnnotToolContentViewModel(IRegionManager regionManager, IEventAggregator eventAggregator, IDialogService dialogService)
         {
             region = regionManager;
@@ -60,9 +60,11 @@ namespace PDF_Office.ViewModels.Tools
             SetAddAnnotationCommand = new DelegateCommand<object>(AddAnnotation_Click);
             PropertyRegionName = Guid.NewGuid().ToString();
         }
-        #endregion
+
+        #endregion 初始化
 
         #region Command实现
+
         //点击注释工具
         private void BtnMyTools_Click(CustomIconToggleBtn annotBtn)
         {
@@ -90,6 +92,7 @@ namespace PDF_Office.ViewModels.Tools
                     annotArgs.Author = Settings.Default.AppProperties.Description.Author;
                     PDFViewer.SetMouseMode(MouseModes.AnnotCreate);
                     PDFViewer.SetToolParam(annotArgs);
+                    isRightMenuAddAnnot = false;
                 }
             }
 
@@ -99,14 +102,17 @@ namespace PDF_Office.ViewModels.Tools
                 PDFViewer.SetMouseMode(MouseModes.PanTool);
                 viewContentViewModel.SelectedPrpoertyPanel("PropertyPanelContent", null);
             }
-            if (isSnapshotEdit == true)
-            {
-                ShowPropertyPanel(false);
-                isSnapshotEdit = false;
-            }
             else
             {
-                ShowPropertyPanel((bool)annotBtn.IsChecked);
+                if (isSnapshotEdit == true)
+                {
+                    ShowPropertyPanel(false);
+                    isSnapshotEdit = false;
+                }
+                else
+                {
+                    ShowPropertyPanel((bool)annotBtn.IsChecked);
+                }
             }
         }
 
@@ -165,13 +171,13 @@ namespace PDF_Office.ViewModels.Tools
                     annotHandler.Author = Settings.Default.AppProperties.Description.Author;
                     PDFViewer.SetMouseMode(MouseModes.AnnotCreate);
                     PDFViewer.SetToolParam(annotHandler);
-                    ShowPropertyPanel(true);
+                    isRightMenuAddAnnot = true;
+                    ShowPropertyPanel(false);
                 }
             }
         }
 
-
-        #endregion
+        #endregion Command实现
 
         #region BOTA
 
@@ -252,10 +258,10 @@ namespace PDF_Office.ViewModels.Tools
             }
         }
 
-
-        #endregion
+        #endregion BOTA
 
         #region 阅读页右键菜单
+
         private void PageDisplay(ItemCollection items)
         {
             foreach (var item in items)
@@ -528,16 +534,16 @@ namespace PDF_Office.ViewModels.Tools
             }
         }
 
-        private void MenuItem_Click(object sender, RoutedEventArgs e)
+        private void AddLink_Click(object sender, RoutedEventArgs e)
         {
             var args = PDFViewer.ToolManager.CurrentAnnotArgs;
             BtnLinkIsChecked = true;
         }
 
-
-        #endregion
+        #endregion 阅读页右键菜单
 
         #region Navigation
+
         public bool IsNavigationTarget(NavigationContext navigationContext)
         {
             return true;
@@ -555,6 +561,7 @@ namespace PDF_Office.ViewModels.Tools
             navigationContext.Parameters.TryGetValue<CPDFViewer>(ParameterNames.PDFViewer, out PDFViewer);
             BindingPDFViewerHandler();
         }
-        #endregion
+
+        #endregion Navigation
     }
 }

+ 6 - 6
PDF Office/ViewModels/ViewContentViewModel.cs

@@ -46,7 +46,7 @@ namespace PDF_Office.ViewModels
 
         public IEventAggregator events;
 
-        public bool IsCreateLink { get => isCreateLink; set => isCreateLink = value; }
+        public bool IsRightMenuCreateLink { get => isCreateLink; set => isCreateLink = value; }
 
         public string ViwerRegionName { get; set; }
 
@@ -585,7 +585,7 @@ namespace PDF_Office.ViewModels
                     linkArgs.LinkType = LINK_TYPE.GOTO;
                     linkArgs.PageIndex = annotCommand.PageIndex;
                     //linkArgs.InvokeLinkSaveCalled(this, EventArgs.Empty);
-                    this.IsCreateLink = true;
+                    this.IsRightMenuCreateLink = true;
                     AnnotHandlerEventArgs annotArgs = toolContentViewModel.GetLink(linkArgs);
                     PDFViewer.SetMouseMode(MouseModes.AnnotCreate);
                     PDFViewer.SetToolParam(annotArgs);
@@ -1005,8 +1005,8 @@ namespace PDF_Office.ViewModels
             //region.RequestNavigate(TipContentRegionName, "LinkAnnotTip", parameters);
             //TODO 根据上一次关闭记录的菜单,选中TabItem
             EnterSelectedBar("TabItemAnnotation");
-                  //}
-                  //));
+            //}
+            //));
         }
 
         /// <summary>
@@ -1148,7 +1148,7 @@ namespace PDF_Office.ViewModels
         /// <summary>
         /// 另存为或新文档保存逻辑
         /// </summary>
-        public bool saveAsFile(Action RedactionAction=null)
+        public bool saveAsFile(Action RedactionAction = null)
         {
             var dlg = new Microsoft.Win32.SaveFileDialog();
             dlg.Filter = Properties.Resources.OpenDialogFilter;
@@ -1156,7 +1156,7 @@ namespace PDF_Office.ViewModels
             if (dlg.ShowDialog() == true && !string.IsNullOrEmpty(dlg.FileName))
             {
                 bool result = false;
-                if(RedactionAction!=null)
+                if (RedactionAction != null)
                 {
                     //保存前进行标记密文处理应用或擦除
                     RedactionAction.Invoke();

Rozdielové dáta súboru neboli zobrazené, pretože súbor je príliš veľký
+ 3 - 1
PDF Office/Views/Tools/AnnotToolContent.xaml