using ComPDFKitViewer;
using PDF_Office.ViewModels;
using PDF_Office.Views.PropertyPanel.ViewModular;
using System;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Input;
using System.Windows.Media;
namespace PDF_Office.Views
{
///
/// Interaction logic for ViewContent
///
public partial class ViewContent : UserControl
{
private ViewContentViewModel viewModel = null;
public ViewContent()
{
InitializeComponent();
viewModel = (ViewContentViewModel)this.DataContext;
}
///
/// 阅读模式
///
///
///
public void RbtnReadMode_Click(object sender, RoutedEventArgs e)
{
if (viewModel != null)
{
App.IsBookMode = true;
SetReadMode(true);
}
}
///
/// 设置阅读模式下的控件
///
///
private void SetReadMode(bool isBookMode)
{
if (isBookMode)
{
viewModel.IsReadMode = Visibility.Collapsed;
viewModel.IsPropertyOpen = false;
viewModel.ToolContentVisible = Visibility.Collapsed;
viewModel.ToolsBarContentVisible = Visibility.Collapsed;
this.ReadModeContent.Visibility = Visibility.Visible;
this.RectangleReadMode.Visibility = Visibility.Collapsed;
Grid.SetColumn(this.PDFViewerContent, 0);
Grid.SetColumnSpan(this.PDFViewerContent, 4);
Grid.SetRow(this.DocumentView, 0);
Grid.SetRowSpan(this.DocumentView, 4);
}
else
{
viewModel.IsReadMode = Visibility.Visible;
viewModel.IsPropertyOpen = true;
viewModel.ToolContentVisible = Visibility.Visible;
viewModel.ToolsBarContentVisible = Visibility.Visible;
this.ReadModeContent.Visibility = Visibility.Collapsed;
this.RectangleReadMode.Visibility = Visibility.Visible;
Grid.SetColumn(this.PDFViewerContent, 2);
Grid.SetColumnSpan(this.PDFViewerContent, 1);
Grid.SetRow(this.DocumentView, 2);
Grid.SetRowSpan(this.DocumentView, 1);
}
}
///
/// 退出阅读模式
///
///
///
private void UserControl_KeyDown(object sender, System.Windows.Input.KeyEventArgs e)
{
if (Key.Escape == e.Key)
{
if (viewModel != null)
{
App.IsBookMode = false;
SetReadMode(false);
}
}
}
///
/// 鼠标移开页面控件,三秒后隐藏该控件
///
///
///
private async void ReadModeContent_MouseLeave(object sender, RoutedEventArgs e)
{
await System.Threading.Tasks.Task.Delay(3000);
this.ReadModeContent.Visibility = Visibility.Collapsed;
this.RectangleReadMode.Visibility = Visibility.Visible;
}
///
/// 鼠标移动到控件范围时显示控件
///
///
///
private void RectangleReadMode_MouseEnter(object sender, MouseEventArgs e)
{
if (App.IsBookMode)
{
this.ReadModeContent.Visibility = Visibility.Visible;
this.RectangleReadMode.Visibility = Visibility.Collapsed;
}
}
}
}