using ComPDFKitViewer.AnnotEvent; using PDF_Office.ViewModels.PropertyPanel.AnnotPanel; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows; using System.Windows.Controls; using System.Windows.Data; using System.Windows.Documents; using System.Windows.Input; using System.Windows.Media; using System.Windows.Media.Imaging; using System.Windows.Navigation; using System.Windows.Shapes; namespace PDF_Office.Views.PropertyPanel.AnnotPanel { /// /// StickyNoteProperty.xaml 的交互逻辑 /// public partial class StickyNoteProperty : UserControl { private StickyNotePropertyViewModel ViewModel => DataContext as StickyNotePropertyViewModel; public StickyNoteProperty() { InitializeComponent(); } private void ViewModel_LoadPropertyHandler(object sender, object e) { var item = e as AnnotHandlerEventArgs; switch (item.EventType) { case AnnotArgsType.AnnotHighlight: { var annot = item as TextHighlightAnnotArgs; if (annot != null) { cusColor.SelectedColor = annot.Color; SlidOpacity.SetSliOpacity(annot.Transparency); } break; } case AnnotArgsType.AnnotUnderline: { var annot = item as TextUnderlineAnnotArgs; if (annot != null) { cusColor.SelectedColor = annot.Color; SlidOpacity.SetSliOpacity(annot.Transparency); } break; } case AnnotArgsType.AnnotStrikeout: { var annot = item as TextStrikeoutAnnotArgs; if (annot != null) { cusColor.SelectedColor = annot.Color; SlidOpacity.SetSliOpacity(annot.Transparency); } break; } } } private void SlidOpacity_SelectedValue(object sender, double e) { if (ViewModel != null) { ViewModel.SelectedValueChangedCommand?.Execute(e); } } private void cusColor_SelectedColor(object sender, Color e) { if (ViewModel != null) { ViewModel.SelectedColorChangedCommand?.Execute(e); } } private void UserControl_Loaded(object sender, RoutedEventArgs e) { cusColor.SelectedColorHandler -= cusColor_SelectedColor; cusColor.SelectedColorHandler += cusColor_SelectedColor; // SlidOpacity.SelectedValueChanged -= SlidOpacity_SelectedValue; // SlidOpacity.SelectedValueChanged += SlidOpacity_SelectedValue; ViewModel.LoadPropertyHandler -= ViewModel_LoadPropertyHandler; ViewModel.LoadPropertyHandler += ViewModel_LoadPropertyHandler; } private void UserControl_Unloaded(object sender, RoutedEventArgs e) { cusColor.SelectedColorHandler -= cusColor_SelectedColor; // SlidOpacity.SelectedValueChanged -= SlidOpacity_SelectedValue; ViewModel.LoadPropertyHandler -= ViewModel_LoadPropertyHandler; } } }