From 9211ec11c112e18cd99e77f889a01110a70031ce Mon Sep 17 00:00:00 2001
From: alielie <alielie@git.com>
Date: 星期一, 24 十一月 2025 17:47:15 +0800
Subject: [PATCH] 优化项目结构
---
Plugin.SeqEditor/SeqEditor.xaml.cs | 75 +++++++++++++++++++++++++++++++++++++
1 files changed, 74 insertions(+), 1 deletions(-)
diff --git a/Plugin.SeqEditor/SeqEditor.xaml.cs b/Plugin.SeqEditor/SeqEditor.xaml.cs
index 94f8f87..7bef44c 100644
--- a/Plugin.SeqEditor/SeqEditor.xaml.cs
+++ b/Plugin.SeqEditor/SeqEditor.xaml.cs
@@ -1,9 +1,12 @@
using HMI.Base;
using HMI.UI;
using Panuon.WPF.UI;
+using Plugin.SeqEditor.Entity;
using Plugin.SeqEditor.Util;
using Plugin.SeqEditor.ViewModel;
+using System.Web.UI.WebControls;
using System.Windows;
+using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Input;
@@ -19,7 +22,7 @@
InitializeComponent();
CbFilter.ItemsSource = (IEnumerable<MultiComboBoxData>)
new MultiComboBoxDataConverter().Convert(FilterTypeData.ItemSource,
- null,null,null
+ null, null, null
);
}
@@ -66,5 +69,75 @@
{
e.Handled = false;
}
+
+ private void Expander_PreviewMouseDown(object sender, MouseButtonEventArgs e)
+ {
+ e.Handled = false;
+ }
+
+ private void TreeListView_SizeChanged(object sender, SizeChangedEventArgs e)
+ {
+ //var treeListView = sender as TreeListView;
+ //var columns = treeListView.Columns;
+ //var width = treeListView.ActualWidth;
+
+ //columns[0].Width = columns[0].Width + (width - columns[0].Width - columns[1].Width - columns[2].Width - columns[3].Width);
+
+ //foreach (var col in columns) {
+ // col.Width =
+ //}
+ }
+
+ public void HandleStatus(ItemContainerGenerator cg, StepUI step, bool status)
+ {
+ DependencyObject dObject = cg.ContainerFromItem(step);
+ if (status == true)
+ {
+ if (dObject is TreeViewItem item)
+ {
+ if (step.Children != null && step.Children.Count > 0)
+ {
+ if (item.IsExpanded != status)
+ {
+ item.IsExpanded = status;
+ item.UpdateLayout();
+ }
+ foreach (var child in step.Children)
+ {
+ HandleStatus(item.ItemContainerGenerator, child, status);
+ }
+ }
+ }
+ }
+ else
+ {
+ if (dObject is TreeViewItem item)
+ {
+ if (step.Children != null && step.Children.Count > 0)
+ {
+ foreach (var child in step.Children)
+ {
+ HandleStatus(item.ItemContainerGenerator, child, status);
+ }
+ item.IsExpanded = status;
+ }
+ }
+ }
+ }
+
+ public bool expandAll = false;
+ private void Button_Click(object sender, RoutedEventArgs e)
+ {
+ treeList.UpdateLayout();
+ foreach (var item in treeList.Items)
+ {
+ if (item is StepUI step)
+ {
+ HandleStatus(treeList.ItemContainerGenerator, step, !expandAll);
+ }
+ }
+ expandAll = !expandAll;
+ //treeAll.Content = expandAll ? "一键收起" : "一键展开";
+ }
}
--
Gitblit v1.9.1