using ComPDFKitViewer.AnnotEvent; using ComPDFKitViewer.PdfViewer; using PDF_Office.Model; using Prism.Mvvm; using Prism.Regions; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Media; namespace PDF_Office.ViewModels.Form { public class ListBoxPropertyViewModel : FormBaseVM, INavigationAware { #region 属性 #region 选项 //排序项目 private bool _isSortProject = false; public bool IsSortProject { get { return _isSortProject; } set { SetProperty(ref _isSortProject, value); } } //多重选择的 private bool _multipleSelection = false; public bool MultipleSelection { get { return _multipleSelection; } set { SetProperty(ref _multipleSelection, value); } } #endregion #endregion #region Command #endregion #region 变量 private CPDFViewer PDFViewer; private WidgetListBoxArgs listBoxArgs; #endregion #region 初始化 public ListBoxPropertyViewModel() { InitVariable(); InitCommand(); } private void InitVariable() { } private void InitCommand() { ChangeValueHandler -= ChangeValue; ChangeValueHandler += ChangeValue; } #endregion #region 一般处理 #endregion #region 外观处理 #endregion #region 选项处理 #endregion #region Navegation public bool IsNavigationTarget(NavigationContext navigationContext) { return true; } public void OnNavigatedFrom(NavigationContext navigationContext) { listBoxArgs = null; } public void OnNavigatedTo(NavigationContext navigationContext) { navigationContext.Parameters.TryGetValue(ParameterNames.PDFViewer, out PDFViewer); navigationContext.Parameters.TryGetValue("WidgetArgs", out listBoxArgs); GetWidgeText(); } private void GetWidgeText() { PDFViewer.SetMouseMode(MouseModes.FormEditTool); if (listBoxArgs == null) { listBoxArgs = new WidgetListBoxArgs(); listBoxArgs.BgColor = Colors.White; listBoxArgs.FontFamily = "Courier New"; listBoxArgs.FontSize = 12; listBoxArgs.FontColor = Colors.Black; listBoxArgs.LineColor = Colors.Black; listBoxArgs.LineWidth = 1; listBoxArgs.FieldName = "ListBox1"; PDFViewer.SetToolParam(listBoxArgs); } else { PDFViewer.SetToolParam(new AnnotHandlerEventArgs()); } } //更改基类公共属性后,触发的事件 private void ChangeValue(object sender, FormAttributeType e) { switch (e) { case FormAttributeType.Name: break; case FormAttributeType.ToolTip: break; case FormAttributeType.IsSolid: break; case FormAttributeType.IsLocked: break; case FormAttributeType.HeightSize: break; case FormAttributeType.BorderThiness: break; case FormAttributeType.BorderColor: break; case FormAttributeType.ContentColor: break; case FormAttributeType.IsReadOnly: break; case FormAttributeType.WidthSize: break; case FormAttributeType.IsRequiredField: break; } } #endregion } }