From f08871fe7d148d667f2f11f80f64de71a0d9504c Mon Sep 17 00:00:00 2001
From: alielie <alielie@git.com>
Date: 星期一, 15 六月 2026 18:19:37 +0800
Subject: [PATCH] 优化标准老化界面

---
 Plugin.SeqEditor/SeqEditor.xaml |  167 ++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 109 insertions(+), 58 deletions(-)

diff --git a/Plugin.SeqEditor/SeqEditor.xaml b/Plugin.SeqEditor/SeqEditor.xaml
index 0867528..aa95341 100644
--- a/Plugin.SeqEditor/SeqEditor.xaml
+++ b/Plugin.SeqEditor/SeqEditor.xaml
@@ -4,6 +4,7 @@
              xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
              xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
              xmlns:local="clr-namespace:Plugin.SeqEditor"
+             xmlns:sp="clr-namespace:Plugin.SeqEditor.SettingPanel"
              mc:Ignorable="d" 
              xmlns:hcu="clr-namespace:HMI.Core.Util;assembly=HMI.Core"
              xmlns:hb="clr-namespace:HMI.Base;assembly=HMI.Base"
@@ -31,7 +32,11 @@
                 <ResourceDictionary Source="/HMI.UI;component/Controls/TreeGrid/Themes/TreeGrid.xaml"/>
             </ResourceDictionary.MergedDictionaries>
 
+            <x:Static x:Key="runModeResource" Member="util:RunModeData.ItemSource"/>
+
             <uic:IndentConverter x:Key="IndentConverter"/>
+
+            <local:RowNumberConverter x:Key="treeNumber"/>
 
             <Style TargetType="pu:FormGroup">
                 <Setter Property="Padding" Value="0,10"/>
@@ -122,18 +127,9 @@
 
                 <Style.Triggers>
                     <Trigger Property="IsSelected" Value="True">
-                        <Setter Property="Background" Value="{StaticResource PrimaryColor}"/>
+                        <Setter Property="Background" Value="{DynamicResource PrimaryColor}"/>
                     </Trigger>
                 </Style.Triggers>
-            </Style>
-
-            <Style x:Key="sb" TargetType="ui:TreeDataGrid" BasedOn="{StaticResource DefaultDataGrid}">
-                <Setter Property="pu:DataGridHelper.RowHeaderSeparatorVisibility" Value="Visible"/>
-                <Setter Property="pu:DataGridHelper.RowHeaderSeparatorBrush" Value="#FFF"/>
-                <Setter Property="AreRowDetailsFrozen" Value="False"/>
-                <Setter Property="HeadersVisibility" Value="Column"/>
-                <Setter Property="DataGridCell.VerticalContentAlignment" Value="Center"/>
-                <Setter Property="DataGridCell.HorizontalContentAlignment" Value="Left"/>
             </Style>
 
             <Style x:Key="gvh" TargetType="GridViewColumnHeader">
@@ -151,18 +147,16 @@
         <Grid dp:GridHelper.Space="10" Cursor="">
             <Grid.RowDefinitions>
                 <RowDefinition Height="Auto"/>
-                <RowDefinition Height="Auto"/>
                 <RowDefinition/>
             </Grid.RowDefinitions>
             <Grid.ColumnDefinitions>
-                <ColumnDefinition Width="0"/>
-                <ColumnDefinition Width="8*"/>
-                <ColumnDefinition Width="2*"/>
+                <ColumnDefinition Width="8.5*"/>
+                <ColumnDefinition Width="1.5*"/>
             </Grid.ColumnDefinitions>
 
-            <DockPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="3" Margin="0,0,0,10">
+            <DockPanel Grid.Row="0" Grid.Column="0" Grid.ColumnSpan="2" Margin="0,0,0,10">
                 <StackPanel DockPanel.Dock="Right"  Orientation="Horizontal"
-        dp:StackPanelHelper.ChildSpace="10">
+        dp:StackPanelHelper.ChildSpace="10" Margin="0,5">
                     <Button Style="{StaticResource AddBtn}" Content="{DynamicResource se.open}" Command="{Binding OpenSeqFileCommand}"/>
                     <Button Style="{StaticResource SaveBtn}" Content="{DynamicResource se.save}" Command="{Binding SaveSeqFileCommand}"/>
                     <Button Style="{StaticResource SaveBtn}" pu:ButtonHelper.Icon="&#xe60b;"
@@ -171,13 +165,13 @@
                     <Button Style="{StaticResource DelBtn}" Content="{DynamicResource se.close}"
                             pu:ButtonHelper.Icon="&#xe609;"
                             Command="{Binding CloseSeqFileCommand}"/>
+                    <!--<Button Style="{StaticResource DelBtn}" Content="涓�閿睍寮�"
+                            x:Name="treeAll"
+                            Click="Button_Click"/>-->
                 </StackPanel>
 
-                <TextBlock DockPanel.Dock="Left" FontSize="{StaticResource TitleFontSize}" 
-           VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource se.title}"/>
-
-                <TextBlock DockPanel.Dock="Left" FontSize="{StaticResource ContentFontSize2}" 
-                           Margin="20,0,0,0"
+                <TextBlock DockPanel.Dock="Right" FontSize="{StaticResource ContentFontSize2}" 
+                           Margin="20,0,20,0"
 VerticalAlignment="Bottom" LineHeight="{StaticResource TitleFontSize}" HorizontalAlignment="Left">
                 <Run Text="{Binding CurrentFileName}"/>
                 <Run DataContext="{Binding CurrentSeqUI}">
@@ -192,6 +186,20 @@
                     </Run.Style>
                 </Run>
                 </TextBlock>
+
+                <!--<TextBlock DockPanel.Dock="Left" FontSize="{StaticResource TitleFontSize}" 
+           VerticalAlignment="Center" HorizontalAlignment="Left" Text="{DynamicResource se.title}"/>-->
+
+                <pu:FormGroup DockPanel.Dock="Left" Header="姝ラ绫诲瀷" Style="{StaticResource InputFormGroupStyle}">
+                    <StackPanel Orientation="Horizontal">
+                        <ui:MultiComboBox SelectedValues="{Binding TargetType}"
+                          pu:ComboBoxHelper.ClearButtonVisibility="Collapsed"
+                          Width="450" Margin="0,0,10,0" x:Name="CbFilter" IsEditable="True" IsReadOnly="True" >
+
+                        </ui:MultiComboBox>
+                        <Button Style="{StaticResource RfhBtn}" Command="{Binding RefreshCommand}"/>
+                    </StackPanel>
+                </pu:FormGroup>
             </DockPanel>
 
             <!--<pu:FormGroup Header="{DynamicResource se.seq}" Orientation="Vertical" Grid.Row="1" Grid.Column="0">
@@ -205,19 +213,10 @@
                     </DataGrid.Columns>
                 </DataGrid>
             </pu:FormGroup>-->
-            <pu:FormGroup Grid.Row="1" Grid.Column="1" Header="姝ラ绫诲瀷" Style="{StaticResource InputFormGroupStyle}">
-                <StackPanel Orientation="Horizontal">
-                    <ui:MultiComboBox SelectedValues="{Binding TargetType}"
-                                      pu:ComboBoxHelper.ClearButtonVisibility="Collapsed"
-                                      Width="450" Margin="0,0,10,0" x:Name="CbFilter" IsEditable="True" IsReadOnly="True" >
-
-                    </ui:MultiComboBox>
-                    <Button Style="{StaticResource RfhBtn}" Command="{Binding RefreshCommand}"/>
-                </StackPanel>
-            </pu:FormGroup>
 
 
-            <pu:FormGroup Header="{Binding CurrentSeqTitle}" Orientation="Vertical" Grid.Row="2" Grid.Column="1">
+
+            <pu:FormGroup Header="{Binding CurrentSeqTitle}" Orientation="Vertical" Grid.Row="1" Grid.Column="0">
                 <!--<DataGrid ItemsSource="{Binding Source={StaticResource cvs}}"
                           RowStyle="{StaticResource StepRow}"
                           SelectedItem="{Binding CurrentStepUI}">
@@ -377,8 +376,11 @@
                 </ui:TreeDataGrid>-->
 
 
-                <ui:TreeListView Grid.Row="1" Grid.Column="1" ItemsSource="{Binding AllSteps}"
+                <ui:TreeListView Grid.Row="1" Grid.Column="0" ItemsSource="{Binding AllSteps}"
                                  dd:DragDrop.IsDragSource="True"
+                                 FontSize="14"
+                                 x:Name="treeList"
+                                 pu:TreeViewHelper.ItemsHeight="{DynamicResource nanD}"
                                  dd:DragDrop.IsDropTarget="True"
                                  dd:DragDrop.DropTargetAdornerBrush="Red"
                                  dd:DragDrop.DropHandler="{Binding StepDropHandler}"
@@ -393,11 +395,12 @@
                     </i:Interaction.Triggers>
                     <ui:TreeListView.Resources>
                         <Style x:Key="CellBorder" TargetType="Border">
-                            <Setter Property="Padding" Value="5"/>
+                            <Setter Property="Padding" Value="2"/>
                             <Setter Property="BorderBrush" Value="{DynamicResource CommonBoarder}"/>
                             <Setter Property="BorderThickness" Value="1,0,0,1"/>
                             <Setter Property="Margin" Value="-6,0"/>
                         </Style>
+                        <Style TargetType="ScrollBar" BasedOn="{StaticResource ScrollStyle_Mobile}"/>
                     </ui:TreeListView.Resources>
 
                     <ui:TreeListView.Style>
@@ -405,6 +408,7 @@
                             <Setter Property="pu:TreeViewHelper.ToggleArrowToggleButtonStyle" Value="{StaticResource TreeTogg}"/>
                             <Setter Property="pu:TreeViewHelper.ItemsPadding" Value="0"/>
                             <Setter Property="Background" Value="#FFF"/>
+                            <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
                             <Setter Property="ColumnHeaderContainerStyle" Value="{StaticResource gvh}"/>
                             <Setter Property="Template">
                                 <Setter.Value>
@@ -437,19 +441,21 @@
                     </ui:TreeListView.Style>
 
                     <ui:TreeListView.Columns>
-                        <GridViewColumn Header="鍚嶇О" HeaderContainerStyle="{StaticResource gvh}"
+                        <GridViewColumn Header="搴忓彿" HeaderContainerStyle="{StaticResource gvh}"
+                                        Width="80"
                                         HeaderTemplate="{StaticResource gvht}">
                             <GridViewColumn.CellTemplate>
                                 <DataTemplate>
                                     <Border Style="{StaticResource CellBorder}">
-                                        <StackPanel Orientation="Horizontal">
+                                        <StackPanel Orientation="Horizontal" HorizontalAlignment="Left">
                                             <ToggleButton x:Name="Expander"
       Style="{StaticResource ExpandCollapseToggleStyle}"
                                           Margin="{Binding level,Converter={StaticResource IndentConverter},RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ui:TreeListViewItem,AncestorLevel=1}}"
       Grid.Column="0"
 IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ui:TreeListViewItem,AncestorLevel=1}}"
 ClickMode="Press"/>
-                                            <TextBlock Margin="5,0,0,0" Padding="6,0" Text="{Binding Name}"/>
+                                            <TextBlock Margin="5,0,0,0" Padding="6,0" 
+                                                       Text="{Binding CustomIndex}"/>
                                         </StackPanel>
                                     </Border>
 
@@ -465,8 +471,62 @@
                             </GridViewColumn.CellTemplate>
                         </GridViewColumn>
 
-                        <GridViewColumn Header="绫诲瀷" HeaderContainerStyle="{StaticResource gvh}" 
+                        <GridViewColumn Header="鍚嶇О" HeaderContainerStyle="{StaticResource gvh}"
+                                        Width="200"
                                         HeaderTemplate="{StaticResource gvht}">
+                            <GridViewColumn.CellTemplate>
+                                <DataTemplate>
+                                    <Border Style="{StaticResource CellBorder}">
+                                        <TextBlock Margin="5,0,0,0" Padding="6,0" Text="{Binding Name}"/>
+                                    </Border>
+                                </DataTemplate>
+                            </GridViewColumn.CellTemplate>
+                        </GridViewColumn>
+
+                        <GridViewColumn Header="{DynamicResource se.runMode}" 
+                                        Width="100"
+                                        HeaderContainerStyle="{StaticResource gvh}" 
+                                        HeaderTemplate="{StaticResource gvht}">
+                            <GridViewColumn.CellTemplate>
+                                <DataTemplate>
+                                    <Border Style="{StaticResource CellBorder}">
+                                        <!--<TextBlock Padding="6,0" Text="{Binding RunMode}"/>-->
+                                        <ui:TableComboBox CanEdit="True"
+                                                          DisplayMemberPath="DisplayName" SelectedValuePath="DataValue"
+                                                          ItemsSource="{StaticResource runModeResource}"
+                                                          Value="{Binding RunMode,Mode=TwoWay}"/>
+                                    </Border>
+                                </DataTemplate>
+                            </GridViewColumn.CellTemplate>
+                        </GridViewColumn>
+
+                        <GridViewColumn Header="Low" HeaderContainerStyle="{StaticResource gvh}"
+                                        Width="300"
+                HeaderTemplate="{StaticResource gvht}">
+                            <GridViewColumn.CellTemplate>
+                                <DataTemplate>
+                                    <Border Style="{StaticResource CellBorder}">
+                                        <ui:EditBox Value="{Binding Low,Mode=TwoWay}" CanEdit="{Binding HasLow}"/>
+                                    </Border>
+                                </DataTemplate>
+                            </GridViewColumn.CellTemplate>
+                        </GridViewColumn>
+
+                        <GridViewColumn Header="High" HeaderContainerStyle="{StaticResource gvh}"
+                                        Width="300"
+HeaderTemplate="{StaticResource gvht}">
+                            <GridViewColumn.CellTemplate>
+                                <DataTemplate>
+                                    <Border Style="{StaticResource CellBorder}">
+                                        <ui:EditBox Value="{Binding High,Mode=TwoWay}" CanEdit="{Binding HasHigh}"/>
+                                    </Border>
+                                </DataTemplate>
+                            </GridViewColumn.CellTemplate>
+                        </GridViewColumn>
+
+                        <GridViewColumn Header="绫诲瀷" HeaderContainerStyle="{StaticResource gvh}" 
+                                        Width="120"
+                HeaderTemplate="{StaticResource gvht}">
                             <GridViewColumn.CellTemplate>
                                 <DataTemplate>
                                     <Border Style="{StaticResource CellBorder}">
@@ -477,24 +537,12 @@
                         </GridViewColumn>
 
                         <GridViewColumn Header="鎻忚堪" HeaderContainerStyle="{StaticResource gvh}"
-                                        HeaderTemplate="{StaticResource gvht}">
-                            <GridViewColumn.CellTemplate>
-                                <DataTemplate>
-                                    <Border Style="{StaticResource CellBorder}">
-                                        <TextBlock Padding="6,0" Text="{Binding Description}"/>
-                                    </Border>
-                                </DataTemplate>
-                            </GridViewColumn.CellTemplate>
-                        </GridViewColumn>
-
-                        <GridViewColumn Header="{DynamicResource se.runMode}" 
-                                        Width="80"
-                                        HeaderContainerStyle="{StaticResource gvh}" 
-                                        HeaderTemplate="{StaticResource gvht}">
+                                        Width="500"
+                HeaderTemplate="{StaticResource gvht}">
                             <GridViewColumn.CellTemplate>
                                 <DataTemplate>
                                     <Border Style="{StaticResource CellBorder}" BorderThickness="1,0,1,1">
-                                        <TextBlock Padding="6,0" Text="{Binding RunMode}"/>
+                                        <TextBlock Padding="6,0" Text="{Binding Description}"/>
                                     </Border>
                                 </DataTemplate>
                             </GridViewColumn.CellTemplate>
@@ -513,11 +561,14 @@
 
             </pu:FormGroup>
 
-            <pu:FormGroup Header="{DynamicResource se.propertySetting}" Orientation="Vertical" 
-                          Grid.Row="2" Padding="0,10" Grid.Column="2">
-                <Border x:Name="editPanelContainer" Background="#FFF">
-                </Border>
-            </pu:FormGroup>
+            <StackPanel Grid.Row="1" Grid.Column="1">
+                <pu:FormGroup Header="{DynamicResource se.propertySetting}" Orientation="Vertical" 
+             Padding="0,10" >
+                    <Border x:Name="editPanelContainer" Background="#FFF">
+                    </Border>
+                </pu:FormGroup>
+                <sp:LoopPanel x:Name="loopPanel" DataContext="{Binding CurrentStepUI}"/>
+            </StackPanel>
         </Grid>
     </Border>
 </hb:PluginControl>

--
Gitblit v1.9.1