using PDF_Office.CustomControl; using PDF_Office.Helper; using PDF_Office.Model.PDFTool; using PDF_Office.ViewModels.HomePanel; using PDF_Office.Views.HomePanel.PDFTools; using System.Collections.Generic; using System.Windows; using System.Windows.Controls; using System.Windows.Media; namespace PDF_Office.Views.HomePanel.PDFTools { /// /// HomeToolIControl.xaml 的交互逻辑0 /// /// public partial class QuickToolsContent : UserControl { PDFTools PDFtools; public QuickToolsContent() { InitializeComponent(); PDFtools = new PDFTools(); ListBoxToolBars.ItemsSource = PDFtools.QuickTools; } private void BtnMore_Click(object sender, RoutedEventArgs e) { if (GridAllTools.Height != 270) { GridAllTools.Height = 270; ShowToolsUI(false); } else { GridAllTools.Height = 184; ShowToolsUI(true); } } /// /// 扩展收缩UI /// /// 是否收缩 private void ShowToolsUI(bool IsShowConciseContent) { foreach (var item in ListBoxToolBars.Items) { var listBoxItem = ListBoxToolBars.ItemContainerGenerator.ContainerFromItem(item) as ListBoxItem; if (listBoxItem != null) { var viewItem = listBoxItem.ContentTemplate; var myContentPresenter = CommonHelper.FindVisualChild(listBoxItem); var obj = viewItem.FindName("data", myContentPresenter); var checkNum = obj as PDFToolItem; if (checkNum != null) { checkNum.IsShowConciseContent = IsShowConciseContent; } } } } /// /// 编辑工具 /// private void BtnTools_Click(object sender, RoutedEventArgs e) { } private void GridAllTools_SizeChanged(object sender, SizeChangedEventArgs e) { ListBoxToolBarsWidthChanged(); } private void ListBoxToolBarsWidthChanged() { double containerWidth = ListBoxToolBars.ActualWidth - 20; int widthItem = (int)containerWidth / 5; double margin = widthItem / 3; int i = 0; foreach (var item in ListBoxToolBars.Items) { i++; var listBoxItem = ListBoxToolBars.ItemContainerGenerator.ContainerFromItem(item) as ListBoxItem; if (listBoxItem != null) { if (i % 4 != 0) { listBoxItem.Margin = new Thickness(0, 0, margin, 20); } else { listBoxItem.Margin = new Thickness(0, 0, 0, 20); } listBoxItem.Width = widthItem; } } } private void ListBoxShortCuts_SizeChanged(object sender, SizeChangedEventArgs e) { } private void QuickTools_Click(object sender, System.Windows.Input.MouseButtonEventArgs e) { var toolItem = (sender as FrameworkElement).DataContext as ToolItem; var veiwModel = this.DataContext as HomeGuidContentViewModel; if (veiwModel != null && toolItem != null) { veiwModel.QuickToolsCommand.Execute(toolItem); } } } }