|
@@ -23,313 +23,159 @@ namespace PDF_Office.ViewModels.Form
|
|
|
{
|
|
|
public class TextFieldPropertyViewModel : FormBaseVM, INavigationAware
|
|
|
{
|
|
|
- #region 属性
|
|
|
-
|
|
|
- #region 一般
|
|
|
- private FormFieldType _formPos;
|
|
|
- public FormFieldType FormPos
|
|
|
- {
|
|
|
- get { return _formPos; }
|
|
|
- set { SetProperty(ref _formPos, value); ChangeFieldValue("FormPos"); }
|
|
|
- }
|
|
|
-
|
|
|
- #endregion
|
|
|
-
|
|
|
- #region 选项
|
|
|
- //默认值
|
|
|
- private string _defaultValue;
|
|
|
- public string DefaultValue
|
|
|
- {
|
|
|
- get { return _defaultValue; }
|
|
|
- set { SetProperty(ref _defaultValue, value); }
|
|
|
- }
|
|
|
-
|
|
|
- //多行
|
|
|
- private bool _isMultiline = false;
|
|
|
- public bool IsMultiLine
|
|
|
- {
|
|
|
- get { return _isMultiline; }
|
|
|
- set { SetProperty(ref _isMultiline, value); ChangeFieldValue("IsMultiLine"); }
|
|
|
- }
|
|
|
-
|
|
|
- //滚动显示长文本
|
|
|
- private bool _isScrollText = false;
|
|
|
- public bool IsScrollText
|
|
|
- {
|
|
|
- get { return _isScrollText; }
|
|
|
- set { SetProperty(ref _isScrollText, value); ChangeFieldValue("IsScrollText"); }
|
|
|
- }
|
|
|
-
|
|
|
- #endregion
|
|
|
-
|
|
|
- private FontFamily _fontFamily;
|
|
|
- public FontFamily FontFamilyItem
|
|
|
- {
|
|
|
- get { return _fontFamily; }
|
|
|
- set { SetProperty(ref _fontFamily, value); ChangeFieldValue("FontFamilyItem"); }
|
|
|
- }
|
|
|
-
|
|
|
- private FontStyle _fontStyle;
|
|
|
- public FontStyle FontStyleItem
|
|
|
- {
|
|
|
- get { return _fontStyle; }
|
|
|
- set { SetProperty(ref _fontStyle, value); ChangeFieldValue("FontStyleItem"); }
|
|
|
- }
|
|
|
-
|
|
|
- private FontWeight _fontWeight;
|
|
|
- public FontWeight FontWeightItem
|
|
|
- {
|
|
|
- get { return _fontWeight; }
|
|
|
- set { SetProperty(ref _fontWeight, value); ChangeFieldValue("FontWeightItem"); }
|
|
|
- }
|
|
|
-
|
|
|
- private C_TEXT_ALIGNMENT _textAlignment;
|
|
|
- public C_TEXT_ALIGNMENT TextAlignmentItem
|
|
|
- {
|
|
|
- get { return _textAlignment; }
|
|
|
- set { SetProperty(ref _textAlignment, value); ChangeFieldValue("TextAlignmentItem"); }
|
|
|
- }
|
|
|
-
|
|
|
- private string _content;
|
|
|
- public string FormContent
|
|
|
- {
|
|
|
- get { return _content; }
|
|
|
- set { SetProperty(ref _content, value); ChangeFieldValue("FormContent"); }
|
|
|
- }
|
|
|
-
|
|
|
- #endregion
|
|
|
|
|
|
#region Command变量
|
|
|
- public DelegateCommand<string> NameTextChangedCommand { get; set; }
|
|
|
+ public DelegateCommand<string> FieldNameTextChangedCommand { get; set; }
|
|
|
public DelegateCommand<string> ToolTipTextChangedCommand { get; set; }
|
|
|
|
|
|
- public DelegateCommand<object> IsReadOnlyCheckedCommand { get; set; }
|
|
|
- public DelegateCommand<object> RequiredFieldCheckedCommand { get; set; }
|
|
|
-
|
|
|
//外观
|
|
|
- public DelegateCommand<object> ThicknessChangedCommand { get; set; }
|
|
|
|
|
|
public DelegateCommand<object> ResetColorCommand { get; set; }
|
|
|
public DelegateCommand<object> ResetColorCheckedBtnCommand { get; set; }
|
|
|
- public DelegateCommand<object> FontFamilyChangedCommand { get; set; }
|
|
|
- public DelegateCommand<object> FontStyleChangedCommand { get; set; }
|
|
|
-
|
|
|
- public DelegateCommand<object> AlignmentChangedCommand { get; set; }
|
|
|
+
|
|
|
public DelegateCommand<string> FormContentTextChangedCommand { get; set; }
|
|
|
|
|
|
- public DelegateCommand<object> IsMultiLineCheckedCommand { get; set; }
|
|
|
- public DelegateCommand<object> IsScrollToDisplayCheckedCommand { get; set; }
|
|
|
public DelegateCommand<object> LineStyleCommand { get; set; }
|
|
|
#endregion
|
|
|
|
|
|
#region 变量
|
|
|
- public UpdateAttributeHelper AttribEvent;
|
|
|
private CPDFViewer PDFViewer;
|
|
|
private WidgetTextBoxArgs textBoxArgs;
|
|
|
- private bool IsCurrentWidget = false;
|
|
|
private IDialogService dialogs;
|
|
|
- public List<ComboDataItem> Items { get; private set; }
|
|
|
+ public event EventHandler<int> SelectResetColorBtnHandler;
|
|
|
+ public List<ComboDataItem> FontFamilyItems { get; private set; }
|
|
|
+ public List<ComboDataItem> FontStyleItems { get; private set; }
|
|
|
+ public List<ComboDataItem> AglinmentItems { get; private set; }
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
#region 初始化
|
|
|
public TextFieldPropertyViewModel(IDialogService dialogService)
|
|
|
{
|
|
|
- dialogs = dialogService;
|
|
|
+ dialogs = dialogService;
|
|
|
InitVariable();
|
|
|
InitCommand();
|
|
|
}
|
|
|
|
|
|
private void InitVariable()
|
|
|
{
|
|
|
- InitResetColor();
|
|
|
+ InitAllResetColor();
|
|
|
InitFontFamilyComboBox();
|
|
|
+ InitFontStyleComboBox();
|
|
|
+ InitAglinmentItemsComboBox();
|
|
|
}
|
|
|
|
|
|
- private void InitResetColor()
|
|
|
+ private void InitAllResetColor()
|
|
|
{
|
|
|
- ResetColorOne = new ResetColor()
|
|
|
- {
|
|
|
- BorderColor = new SolidColorBrush(Colors.Transparent),
|
|
|
- FontColor = new SolidColorBrush(Color.FromArgb(0xFF, 0x00, 0x00, 0x00)),
|
|
|
- FillColor = new SolidColorBrush(Colors.Transparent)
|
|
|
- };
|
|
|
+ ResetColorOne = InitResetColor(Colors.Transparent, Color.FromArgb(0xFF, 0x00, 0x00, 0x00), Colors.Transparent);
|
|
|
|
|
|
- ResetColorTwo = new ResetColor()
|
|
|
- {
|
|
|
- BorderColor = new SolidColorBrush(Color.FromArgb(0xFF, 0x00, 0x00, 0x00)),
|
|
|
- FontColor = new SolidColorBrush(Color.FromArgb(0xFF, 0x00, 0x00, 0x00)),
|
|
|
- FillColor = new SolidColorBrush(Colors.Transparent)
|
|
|
- };
|
|
|
-
|
|
|
- ResetColorThree = new ResetColor()
|
|
|
- {
|
|
|
- BorderColor = new SolidColorBrush(Color.FromArgb(0xFF, 0x00, 0x00, 0x00)),
|
|
|
- FontColor = new SolidColorBrush(Color.FromArgb(0xFF, 0x00, 0x00, 0x00)),
|
|
|
- FillColor = new SolidColorBrush(Color.FromArgb(0xFF, 0xBD, 0xDF, 0xFD))
|
|
|
- };
|
|
|
+ ResetColorTwo = InitResetColor(Color.FromArgb(0xFF, 0x00, 0x00, 0x00), Color.FromArgb(0xFF, 0x00, 0x00, 0x00), Colors.Transparent);
|
|
|
|
|
|
- ResetColorForth = new ResetColor()
|
|
|
- {
|
|
|
- BorderColor = new SolidColorBrush(Color.FromArgb(0xFF, 0xff, 0x00, 0x00)),
|
|
|
- FontColor = new SolidColorBrush(Color.FromArgb(0xFF, 0xff, 0x00, 0x00)),
|
|
|
- FillColor = new SolidColorBrush(Colors.Transparent)
|
|
|
- };
|
|
|
+ ResetColorThree = InitResetColor(Color.FromArgb(0xFF, 0x00, 0x00, 0x00), Color.FromArgb(0xFF, 0x00, 0x00, 0x00), Colors.Transparent);
|
|
|
|
|
|
+ ResetColorForth = InitResetColor(Color.FromArgb(0xFF, 0xff, 0x00, 0x00), Color.FromArgb(0xFF, 0xff, 0x00, 0x00), Colors.Transparent);
|
|
|
}
|
|
|
+
|
|
|
private void InitFontFamilyComboBox()
|
|
|
{
|
|
|
- Items = new List<ComboDataItem>();
|
|
|
+ FontFamilyItems = new List<ComboDataItem>();
|
|
|
ComboDataItem item = new ComboDataItem("Courier", "Courier New");
|
|
|
- Items.Add(item);
|
|
|
- item = new ComboDataItem("Arial", "Helvetica");
|
|
|
- Items.Add(item);
|
|
|
- item = new ComboDataItem("Times New Roman", "Times New Roman");
|
|
|
- Items.Add(item);
|
|
|
+ FontFamilyItems.Add(item);
|
|
|
+ item = new ComboDataItem("Helvetica", "Helvetica");
|
|
|
+ FontFamilyItems.Add(item);
|
|
|
+ item = new ComboDataItem("Times Roman", "Times New Roman");
|
|
|
+ FontFamilyItems.Add(item);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void InitFontStyleComboBox()
|
|
|
+ {
|
|
|
+ FontStyleItems = new List<ComboDataItem>();
|
|
|
+ ComboDataItem item = new ComboDataItem("Regular", "Regular");
|
|
|
+ FontStyleItems.Add(item);
|
|
|
+ item = new ComboDataItem("Bold", "Bold");
|
|
|
+ FontStyleItems.Add(item);
|
|
|
+ item = new ComboDataItem("Italic", "Italic");
|
|
|
+ FontStyleItems.Add(item);
|
|
|
+
|
|
|
+ item = new ComboDataItem("Bold Italic", "Bold Italic");
|
|
|
+ FontStyleItems.Add(item);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void InitAglinmentItemsComboBox()
|
|
|
+ {
|
|
|
+ AglinmentItems = new List<ComboDataItem>();
|
|
|
+ ComboDataItem item = new ComboDataItem("Left", "Left");
|
|
|
+ AglinmentItems.Add(item);
|
|
|
+ item = new ComboDataItem("Center", "Center");
|
|
|
+ AglinmentItems.Add(item);
|
|
|
+ item = new ComboDataItem("Right", "Right");
|
|
|
+ AglinmentItems.Add(item);
|
|
|
}
|
|
|
|
|
|
private void InitCommand()
|
|
|
{
|
|
|
- NameTextChangedCommand = new DelegateCommand<string>(NameTextChanged);
|
|
|
+ //一般
|
|
|
+ FieldNameTextChangedCommand = new DelegateCommand<string>(FieldNameTextChanged);
|
|
|
ToolTipTextChangedCommand = new DelegateCommand<string>(ToolTipTextChanged);
|
|
|
- IsReadOnlyCheckedCommand = new DelegateCommand<object>(IsReadOnlyChecked);
|
|
|
- RequiredFieldCheckedCommand = new DelegateCommand<object>(RequiredFieldChecked);
|
|
|
//外观
|
|
|
- ThicknessChangedCommand = new DelegateCommand<object>(ThicknessChanged);
|
|
|
+ ResetColorCheckedBtnCommand = new DelegateCommand<object>(ResetColorCheckedBtn);
|
|
|
ResetColorCommand = new DelegateCommand<object>(ResetColorEvent);
|
|
|
+ LineStyleCommand = new DelegateCommand<object>(LineStyleBtnEvent);
|
|
|
|
|
|
- ResetColorCheckedBtnCommand = new DelegateCommand<object>(ResetColorCheckedBtn);
|
|
|
- FontFamilyChangedCommand = new DelegateCommand<object>(FontFamilyChanged);
|
|
|
- FontStyleChangedCommand = new DelegateCommand<object>(FontStyleChanged);
|
|
|
- AlignmentChangedCommand = new DelegateCommand<object>(AlignmentChanged);
|
|
|
+ //选项
|
|
|
FormContentTextChangedCommand = new DelegateCommand<string>(FormContentTextChanged);
|
|
|
|
|
|
- IsMultiLineCheckedCommand = new DelegateCommand<object>(IsMultiLineChecked);
|
|
|
- IsScrollToDisplayCheckedCommand = new DelegateCommand<object>(IsScrollToDisplayChecked);
|
|
|
- LineStyleCommand = new DelegateCommand<object>(LineStyleBtnEvent);
|
|
|
- ChangeValueHandler -= ChangeValue;
|
|
|
- ChangeValueHandler += ChangeValue;
|
|
|
}
|
|
|
|
|
|
- private void LineStyleBtnEvent(object obj)
|
|
|
- {
|
|
|
- if (obj != null)
|
|
|
- {
|
|
|
- switch ((string)obj)
|
|
|
- {
|
|
|
- case "Solid":
|
|
|
- BorderStyle = ComPDFKit.PDFAnnotation.C_BORDER_STYLE.BS_SOLID;
|
|
|
- break;
|
|
|
- case "Dotted":
|
|
|
- BorderStyle = ComPDFKit.PDFAnnotation.C_BORDER_STYLE.BS_DASHDED;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ #endregion
|
|
|
|
|
|
+ #region 事件
|
|
|
+
|
|
|
|
|
|
- private void IsScrollToDisplayChecked(object obj)
|
|
|
+ private void FieldNameTextChanged(string obj)
|
|
|
{
|
|
|
- if(obj != null)
|
|
|
+ if (string.IsNullOrEmpty(obj) == false && IsCurrentWidget == true)
|
|
|
{
|
|
|
- IsScrollText = (bool)obj;
|
|
|
- }
|
|
|
- }
|
|
|
+ FieldName = obj;
|
|
|
|
|
|
- private void IsMultiLineChecked(object obj)
|
|
|
- {
|
|
|
- if (obj != null)
|
|
|
- {
|
|
|
- IsMultiLine = (bool)obj;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void FormContentTextChanged(string obj)
|
|
|
+ private void ToolTipTextChanged(string obj)
|
|
|
{
|
|
|
- if(obj != null)
|
|
|
+ if (string.IsNullOrEmpty(obj) == false && IsCurrentWidget == true)
|
|
|
{
|
|
|
- FormContent = obj;
|
|
|
+ ToolTipStr = obj;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void AlignmentChanged(object obj)
|
|
|
+
|
|
|
+ private void LineStyleBtnEvent(object obj)
|
|
|
{
|
|
|
if (obj != null)
|
|
|
{
|
|
|
- var combo = (ComboBoxItem)obj;
|
|
|
- if (combo != null)
|
|
|
+ switch ((string)obj)
|
|
|
{
|
|
|
- switch (combo.Content)
|
|
|
- {
|
|
|
- case "Left":
|
|
|
- TextAlignmentItem = C_TEXT_ALIGNMENT.ALIGNMENT_LEFT;
|
|
|
- break;
|
|
|
-
|
|
|
- case "Center":
|
|
|
- TextAlignmentItem = C_TEXT_ALIGNMENT.ALIGNMENT_CENTER;
|
|
|
- break;
|
|
|
-
|
|
|
- case "Right":
|
|
|
- TextAlignmentItem = C_TEXT_ALIGNMENT.ALIGNMENT_RIGHT;
|
|
|
- break;
|
|
|
-
|
|
|
- }
|
|
|
+ case "Solid":
|
|
|
+ BorderStyle = ComPDFKit.PDFAnnotation.C_BORDER_STYLE.BS_SOLID;
|
|
|
+ break;
|
|
|
+ case "Dotted":
|
|
|
+ BorderStyle = ComPDFKit.PDFAnnotation.C_BORDER_STYLE.BS_DASHDED;
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void FontStyleChanged(object obj)
|
|
|
- {
|
|
|
- if(obj != null)
|
|
|
- {
|
|
|
- var combo = (ComboBoxItem)obj;
|
|
|
- if(combo != null)
|
|
|
- {
|
|
|
- switch(combo.Content)
|
|
|
- {
|
|
|
- case "Regular":
|
|
|
- FontStyleItem = FontStyles.Normal;
|
|
|
- FontWeightItem = FontWeights.Normal;
|
|
|
- break;
|
|
|
-
|
|
|
- case "Bold":
|
|
|
- FontStyleItem = FontStyles.Normal;
|
|
|
- FontWeightItem = FontWeights.Bold;
|
|
|
- break;
|
|
|
-
|
|
|
- case "Italic":
|
|
|
- FontStyleItem = FontStyles.Italic;
|
|
|
- FontWeightItem = FontWeights.Normal;
|
|
|
- break;
|
|
|
-
|
|
|
- case "Bold Italic":
|
|
|
- FontStyleItem = FontStyles.Italic;
|
|
|
- FontWeightItem = FontWeights.Bold;
|
|
|
- break;
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
|
|
|
- private void FontFamilyChanged(object obj)
|
|
|
+ private void FormContentTextChanged(string obj)
|
|
|
{
|
|
|
- if (obj != null && string.IsNullOrEmpty((string)obj) == false)
|
|
|
+ if (obj != null && IsCurrentWidget == true)
|
|
|
{
|
|
|
- switch ((string)obj)
|
|
|
- {
|
|
|
- case "Courier":
|
|
|
- FontFamilyItem = new FontFamily("Courier");
|
|
|
- break;
|
|
|
- case "Helvetica":
|
|
|
- FontFamilyItem = new FontFamily("Helvetica");
|
|
|
- break;
|
|
|
- case "Times Roman":
|
|
|
- FontFamilyItem = new FontFamily("Times Roman");
|
|
|
- break;
|
|
|
- }
|
|
|
+ FormContent = obj;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+
|
|
|
private void ResetColorCheckedBtn(object obj)
|
|
|
{
|
|
|
if (obj != null)
|
|
@@ -367,51 +213,8 @@ namespace PDF_Office.ViewModels.Form
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- public event EventHandler<int> SelectResetColorBtnHandler;
|
|
|
- private void UpdataSelectResetColorBtn()
|
|
|
- {
|
|
|
- int result = 0;
|
|
|
- if (UpdataSelectResetColor(ResetColorOne))
|
|
|
- {
|
|
|
- result = 1;
|
|
|
- }
|
|
|
- else if (UpdataSelectResetColor(ResetColorTwo))
|
|
|
- {
|
|
|
- result = 2;
|
|
|
- }
|
|
|
- else if (UpdataSelectResetColor(ResetColorThree))
|
|
|
- {
|
|
|
- result = 3;
|
|
|
- }
|
|
|
- else if (UpdataSelectResetColor(ResetColorForth))
|
|
|
- {
|
|
|
- result = 4;
|
|
|
- }
|
|
|
-
|
|
|
- SelectResetColorBtnHandler?.Invoke(null, result);
|
|
|
- }
|
|
|
-
|
|
|
- private bool UpdataSelectResetColor(ResetColor reset)
|
|
|
- {
|
|
|
- if (reset.FillColor.Color == FillColor &&
|
|
|
- reset.FontColor.Color == ContentColor &&
|
|
|
- reset.BorderColor.Color == BorderColor
|
|
|
- )
|
|
|
- {
|
|
|
- return true;
|
|
|
- }
|
|
|
-
|
|
|
- return false;
|
|
|
- }
|
|
|
-
|
|
|
private void ResetColorEvent(object obj)
|
|
|
{
|
|
|
- //if(obj != null && (ResetColor)obj != null)
|
|
|
- // {
|
|
|
- // var resetcolor = obj as ResetColor;
|
|
|
-
|
|
|
- // }
|
|
|
-
|
|
|
bool result = true;
|
|
|
DialogParameters value = new DialogParameters();
|
|
|
value.Add(ParameterNames.PDFViewer, PDFViewer);
|
|
@@ -424,7 +227,6 @@ namespace PDF_Office.ViewModels.Form
|
|
|
EditPresetColorsDialogViewModel DialogVM = e.Parameters.GetValue<EditPresetColorsDialogViewModel>(ParameterNames.DataModel);
|
|
|
if (DialogVM != null)
|
|
|
{
|
|
|
- // CreateSignature(DialogVM);
|
|
|
}
|
|
|
});
|
|
|
if (!result)
|
|
@@ -433,61 +235,48 @@ namespace PDF_Office.ViewModels.Form
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- private void ThicknessChanged(object obj)
|
|
|
- {
|
|
|
- if(obj != null)
|
|
|
- {
|
|
|
- BorderThiness = (double)obj;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
|
|
|
#endregion
|
|
|
|
|
|
+ #region 外部XAML触发事件
|
|
|
|
|
|
- #region 一般处理
|
|
|
- private void NameTextChanged(string obj)
|
|
|
+ private void UpdataSelectResetColorBtn()
|
|
|
{
|
|
|
- if(string.IsNullOrEmpty(obj) == false && IsCurrentWidget == true)
|
|
|
+ int result = 0;
|
|
|
+ if (UpdataSelectResetColor(ResetColorOne))
|
|
|
{
|
|
|
- NameStr = obj;
|
|
|
-
|
|
|
+ result = 1;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- private void ToolTipTextChanged(string obj)
|
|
|
- {
|
|
|
- if (string.IsNullOrEmpty(obj) == false)
|
|
|
+ else if (UpdataSelectResetColor(ResetColorTwo))
|
|
|
{
|
|
|
- ToolTipStr = obj;
|
|
|
+ result = 2;
|
|
|
}
|
|
|
- }
|
|
|
-
|
|
|
- private void IsReadOnlyChecked(object obj)
|
|
|
- {
|
|
|
- if(obj is bool)
|
|
|
+ else if (UpdataSelectResetColor(ResetColorThree))
|
|
|
{
|
|
|
- IsReadOnly = (bool)obj;
|
|
|
+ result = 3;
|
|
|
+ }
|
|
|
+ else if (UpdataSelectResetColor(ResetColorForth))
|
|
|
+ {
|
|
|
+ result = 4;
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
+ SelectResetColorBtnHandler?.Invoke(null, result);
|
|
|
+ }
|
|
|
|
|
|
- private void RequiredFieldChecked(object obj)
|
|
|
+ private bool UpdataSelectResetColor(ResetColor reset)
|
|
|
{
|
|
|
- if (obj is bool)
|
|
|
+ if (reset.FillColor.Color == FillColor &&
|
|
|
+ reset.FontColor.Color == ContentColor &&
|
|
|
+ reset.BorderColor.Color == BorderColor
|
|
|
+ )
|
|
|
{
|
|
|
- IsRequiredField = (bool)obj;
|
|
|
+ return true;
|
|
|
}
|
|
|
- }
|
|
|
- #endregion
|
|
|
-
|
|
|
- #region 外观处理
|
|
|
|
|
|
+ return false;
|
|
|
+ }
|
|
|
#endregion
|
|
|
|
|
|
- #region 选项处理
|
|
|
-
|
|
|
- #endregion
|
|
|
|
|
|
#region Navegation
|
|
|
public bool IsNavigationTarget(NavigationContext navigationContext)
|
|
@@ -507,21 +296,18 @@ namespace PDF_Office.ViewModels.Form
|
|
|
navigationContext.Parameters.TryGetValue<CPDFViewer>(ParameterNames.PDFViewer, out PDFViewer);
|
|
|
navigationContext.Parameters.TryGetValue<UpdateAttributeHelper>(ParameterNames.AnnotEvent, out AttribEvent);
|
|
|
navigationContext.Parameters.TryGetValue<WidgetTextBoxArgs>("WidgetArgs", out textBoxArgs);
|
|
|
-
|
|
|
GetWidgeText();
|
|
|
UpdataSelectResetColorBtn();
|
|
|
}
|
|
|
- bool isCreateWidget = false;
|
|
|
+
|
|
|
private void GetWidgeText()
|
|
|
{
|
|
|
-
|
|
|
//新建的form表单
|
|
|
if (textBoxArgs == null)
|
|
|
{
|
|
|
PDFViewer.SetMouseMode(MouseModes.FormEditTool);
|
|
|
WidgetTextBoxArgs textArgs = new WidgetTextBoxArgs();
|
|
|
textArgs.BgColor = Colors.LightGray;
|
|
|
- textArgs.FieldName = "TextBox";
|
|
|
textBoxArgs = textArgs;
|
|
|
PDFViewer.SetToolParam(textBoxArgs);
|
|
|
isCreateWidget = true;
|
|
@@ -530,144 +316,78 @@ namespace PDF_Office.ViewModels.Form
|
|
|
{
|
|
|
PDFViewer.SetToolParam(new AnnotHandlerEventArgs());
|
|
|
isCreateWidget = false;
|
|
|
+
|
|
|
}
|
|
|
|
|
|
- GetProperty();
|
|
|
+ GetProperty();
|
|
|
+
|
|
|
IsCurrentWidget = true;
|
|
|
}
|
|
|
+
|
|
|
private void GetProperty()
|
|
|
{
|
|
|
if (textBoxArgs != null)
|
|
|
{
|
|
|
- NameStr = textBoxArgs.FieldName;
|
|
|
- IsRequiredField = textBoxArgs.IsRequired;
|
|
|
- IsMultiLine = textBoxArgs.IsMultiLine;
|
|
|
IsLocked = textBoxArgs.Locked;
|
|
|
+ FieldName = textBoxArgs.FieldName;
|
|
|
ToolTipStr = textBoxArgs.Tooltip;
|
|
|
+ IsReadOnly = textBoxArgs.ReadOnly;
|
|
|
+ IsRequiredField = textBoxArgs.IsRequired;
|
|
|
+
|
|
|
FillColor = textBoxArgs.BgColor;
|
|
|
ContentColor = textBoxArgs.FontColor;
|
|
|
BorderColor = textBoxArgs.LineColor;
|
|
|
BorderThiness = textBoxArgs.LineWidth;
|
|
|
BorderStyle = textBoxArgs.BorderStyle;
|
|
|
+
|
|
|
+ FormField = (FormFieldType)textBoxArgs.FormField;
|
|
|
+
|
|
|
+ string fontWeightStyleStr = "";
|
|
|
+ if (textBoxArgs.FontStyle == FontStyles.Normal)
|
|
|
+ {
|
|
|
+ if (textBoxArgs.FontWeight == FontWeights.Normal)
|
|
|
+ fontWeightStyleStr = "Regular";
|
|
|
+ else
|
|
|
+ fontWeightStyleStr = "Bold";
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if (textBoxArgs.FontWeight == FontWeights.Normal)
|
|
|
+ fontWeightStyleStr = "Italic";
|
|
|
+ else
|
|
|
+ fontWeightStyleStr = "Bold Italic";
|
|
|
+ }
|
|
|
+ FontWeightStyleItem = new ComboDataItem(fontWeightStyleStr);
|
|
|
+
|
|
|
+ FontFamilyData = new ComboDataItem(textBoxArgs.FontFamily);
|
|
|
//避免BorderStyle跟上一个值相同,而没触发更改IsSolid属性
|
|
|
if (BorderStyle == C_BORDER_STYLE.BS_SOLID)
|
|
|
IsSolid = true;
|
|
|
else
|
|
|
IsSolid = false;
|
|
|
- }
|
|
|
- }
|
|
|
- //更改基类公共属性后,触发的事件
|
|
|
- private void ChangeValue(object sender, FormAttributeType e)
|
|
|
- {
|
|
|
+ FontSizeData = new ComboDataItem(textBoxArgs.FontSize);
|
|
|
+ if (isCreateWidget == false)
|
|
|
+ {
|
|
|
+ HeightSize = textBoxArgs.Height;
|
|
|
+ WidthSize = textBoxArgs.Width;
|
|
|
+ }
|
|
|
|
|
|
- switch (e)
|
|
|
- {
|
|
|
- case FormAttributeType.Name:
|
|
|
- textBoxArgs.FieldName = NameStr;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FieldName, NameStr);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.ToolTip:
|
|
|
- textBoxArgs.Tooltip = ToolTipStr;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.Tooltip, ToolTipStr);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.IsSolid:
|
|
|
- textBoxArgs.BorderStyle = BorderStyle;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.LineStyle, BorderStyle);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.IsLocked:
|
|
|
- textBoxArgs.Locked = IsLocked;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.Locked, IsLocked);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.HeightSize:
|
|
|
- textBoxArgs.Height = HeightSize;
|
|
|
- //AttribEvent?.UpdateAttrib(AnnotAttrib.w, HeightSize);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.BorderThiness:
|
|
|
- textBoxArgs.LineWidth = BorderThiness;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.Thickness, BorderThiness);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.BorderColor:
|
|
|
- textBoxArgs.BgColor = BorderColor;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.Color, BorderColor);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.ContentColor:
|
|
|
- textBoxArgs.FontColor = ContentColor;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FontColor, ContentColor);
|
|
|
- break;
|
|
|
- case FormAttributeType.FillColor:
|
|
|
- textBoxArgs.BgColor = FillColor;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FillColor, FillColor);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.IsReadOnly:
|
|
|
- textBoxArgs.ReadOnly = IsReadOnly;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.ReadOnly, IsReadOnly);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.WidthSize:
|
|
|
- textBoxArgs.Width = WidthSize;
|
|
|
-
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.IsRequiredField:
|
|
|
- textBoxArgs.IsRequired = IsRequiredField;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.IsRequired, IsRequiredField);
|
|
|
- break;
|
|
|
-
|
|
|
- case FormAttributeType.FontFamily:
|
|
|
- textBoxArgs.FontFamily = FontFamilyItem.Source;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FontFamily, FontFamilyItem.Source);
|
|
|
- break;
|
|
|
+ string alignmentStr = "";
|
|
|
|
|
|
- }
|
|
|
- AttribEvent?.UpdateAnnot();
|
|
|
- }
|
|
|
+ if (textBoxArgs.Alignment == C_TEXT_ALIGNMENT.ALIGNMENT_LEFT)
|
|
|
+ alignmentStr = "left";
|
|
|
+ else if (textBoxArgs.Alignment == C_TEXT_ALIGNMENT.ALIGNMENT_CENTER)
|
|
|
+ alignmentStr = "Center";
|
|
|
+ else
|
|
|
+ alignmentStr = "Right";
|
|
|
|
|
|
- private void ChangeFieldValue(string tag)
|
|
|
- {
|
|
|
- switch (tag)
|
|
|
- {
|
|
|
- case "FormPos":
|
|
|
- textBoxArgs.FormField = FormField.Visible;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FormField, FormPos);
|
|
|
- break;
|
|
|
- case "FontFamilyItem":
|
|
|
- textBoxArgs.FontFamily = FontFamilyItem.Source;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FontFamily, FontFamilyItem.Source);
|
|
|
- break;
|
|
|
- case "FontStyleItem":
|
|
|
- textBoxArgs.FontStyle = FontStyleItem;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FontStyle, FontStyleItem);
|
|
|
- break;
|
|
|
- case "FontWeightItem":
|
|
|
- textBoxArgs.FontWeight = FontWeightItem;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.FontWeight, FontWeightItem);
|
|
|
- break;
|
|
|
- case "TextAlignmentItem":
|
|
|
- textBoxArgs.Alignment = TextAlignmentItem;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.TextAlign, TextAlignmentItem);
|
|
|
- break;
|
|
|
- case "FormContent":
|
|
|
- textBoxArgs.Content = FormContent;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.Text, FormContent);
|
|
|
- break;
|
|
|
- case "IsScrollText":
|
|
|
- textBoxArgs.ScrollFlag = IsScrollText;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.ScrollFlag, IsScrollText);
|
|
|
- break;
|
|
|
- case "IsMultiLine":
|
|
|
- textBoxArgs.IsMultiLine = IsMultiLine;
|
|
|
- AttribEvent?.UpdateAttrib(AnnotAttrib.IsMutilLine, IsMultiLine);
|
|
|
- break;
|
|
|
+ TextAlignmentData = new ComboDataItem(alignmentStr, alignmentStr);
|
|
|
+
|
|
|
+ FormContent = textBoxArgs.Text;
|
|
|
+ IsMultiLine = textBoxArgs.IsMultiLine;
|
|
|
+ IsScrollText = textBoxArgs.ScrollFlag;
|
|
|
+
|
|
|
}
|
|
|
- AttribEvent?.UpdateAnnot();
|
|
|
}
|
|
|
|
|
|
#endregion
|