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 ButtonPropertyViewModel : FormBaseVM, INavigationAware { #region 属性 #region 选项 //标签 private string _labelContent; public string LabelContent { get { return _labelContent; } set { SetProperty(ref _labelContent, value); } } private string _emailContent; public string EmailContent { get { return _emailContent; } set { SetProperty(ref _emailContent, value); } } #endregion #endregion #region Command #endregion #region 变量 private CPDFViewer PDFViewer; private WidgetPushButtonArgs pushButtonArgs; #endregion #region 初始化 public ButtonPropertyViewModel() { 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) { pushButtonArgs = null; } public void OnNavigatedTo(NavigationContext navigationContext) { navigationContext.Parameters.TryGetValue(ParameterNames.PDFViewer, out PDFViewer); navigationContext.Parameters.TryGetValue("WidgetArgs", out pushButtonArgs); GetWidgeText(); GetProperty(); } private void GetWidgeText() { PDFViewer.SetMouseMode(MouseModes.FormEditTool); if (pushButtonArgs == null) { WidgetPushButtonArgs pushButtonArgs = new WidgetPushButtonArgs(); pushButtonArgs.BgColor = Colors.White; pushButtonArgs.FontFamily = "Courier New"; pushButtonArgs.FontSize = 12; pushButtonArgs.FontColor = Colors.Black; pushButtonArgs.LineColor = Colors.Black; pushButtonArgs.LineWidth = 1; var action = new Dictionary(); action.Add(ComPDFKit.PDFDocument.Action.C_ACTION_TYPE.ACTION_TYPE_URI, ""); pushButtonArgs.ActionDict = action; pushButtonArgs.FieldName = "PushButton"; pushButtonArgs.Text = "PushButton"; this.pushButtonArgs = pushButtonArgs; PDFViewer.SetToolParam(pushButtonArgs); } else { PDFViewer.SetToolParam(new AnnotHandlerEventArgs()); } } private void GetProperty() { } //更改基类公共属性后,触发的事件 //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 } }