alielie
2026-06-04 771a0e7b6b1276087515bbe94de28358cb92963b
HMI.UI/Style/PanuonResource.xaml
@@ -11,8 +11,9 @@
             xmlns:uic="clr-namespace:HMI.UI.Converter;assembly=HMI.UI"
             xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI">
    <ResourceDictionary.MergedDictionaries>
        <ResourceDictionary Source="/HMI.UI;component/Style/Colors.xaml"/>
        <pu:StyleDictionary Includes="PasswordBox,TextBox,ComboBox,Button,DataGrid,TreeView,Menu,ListBox,ContextMenu" />
        <pu:StyleDictionary Includes="PasswordBox,TextBox,ComboBox,Button,TreeView,Menu,ListBox,ContextMenu,TabControl" />
        <ResourceDictionary Source="/HMI.UI;component/Style/PanuonDataGrid.xaml"/>
        <ResourceDictionary Source="/HMI.UI;component/Style/ScrollBarResource.xaml"/>
        <ResourceDictionary Source="/HMI.UI;component/Resources/Font/Font.xaml"/>
    </ResourceDictionary.MergedDictionaries>
    <sys:Double x:Key="TitleFontSize">20</sys:Double>
@@ -20,7 +21,7 @@
    <sys:Double x:Key="ContentFontSize2">14</sys:Double>
    <Style x:Key="PrimaryButton" TargetType="Button" BasedOn="{StaticResource {x:Static pu:StyleKeys.ButtonStyle}}">
        <Setter Property="Background" Value="{StaticResource VerBar}"/>
        <Setter Property="Background" Value="{DynamicResource VerBar}"/>
        <Setter Property="Foreground" Value="#FFF"/>
        <Setter Property="pu:IconHelper.FontFamily" Value="{StaticResource iconfont}"/>
        <Setter Property="pu:IconHelper.Margin" Value="0,0,10,0"/>
@@ -37,13 +38,13 @@
    </Style>
    <Style x:Key="DangerButton" TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
        <Setter Property="Background" Value="{StaticResource DangerVerBar}"/>
        <Setter Property="Foreground" Value="{StaticResource DangerColorContrast}"/>
        <Setter Property="Background" Value="{DynamicResource DangerVerBar}"/>
        <Setter Property="Foreground" Value="{DynamicResource DangerColorContrast}"/>
    </Style>
    <Style x:Key="SuccessButton" TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
        <Setter Property="Background" Value="{StaticResource GreenVerBar}"/>
        <Setter Property="Foreground" Value="{StaticResource DangerColorContrast}"/>
        <Setter Property="Background" Value="{DynamicResource GreenVerBar}"/>
        <Setter Property="Foreground" Value="{DynamicResource DangerColorContrast}"/>
    </Style>
    <Style x:Key="AddBtn" TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
@@ -55,7 +56,7 @@
        <Setter Property="pu:ButtonHelper.Icon" Value="&#xe643;"/>
        <Setter Property="Content" Value="{DynamicResource App.Edit}"/>
    </Style>
    <Style x:Key="RfhBtn" TargetType="Button" BasedOn="{StaticResource PrimaryButton}">
        <Setter Property="pu:ButtonHelper.Icon" Value="&#xe631;"/>
        <Setter Property="Content" Value="{DynamicResource App.Refresh}"/>
@@ -99,7 +100,7 @@
        <Setter Property="Background" Value="{x:Null}" />
        <Setter Property="Margin" Value="0" />
        <Setter Property="Padding" Value="0" />
        <Setter Property="Foreground" Value="{StaticResource PrimaryColor}" />
        <Setter Property="Foreground" Value="{DynamicResource PrimaryColor}" />
        <Setter Property="Cursor" Value="Hand" />
        <Setter Property="ContentTemplate">
            <Setter.Value>
@@ -111,7 +112,7 @@
    </Style>
    <Style x:Key="DangerLinkButton" TargetType="Button" BasedOn="{StaticResource LinkButton}">
        <Setter Property="Foreground" Value="{StaticResource DangerColor}"/>
        <Setter Property="Foreground" Value="{DynamicResource DangerColor}"/>
    </Style>
    <Style x:Key="DeleteLink" TargetType="Button" BasedOn="{StaticResource DangerLinkButton}">
@@ -145,7 +146,7 @@
    </Style>
    <Style x:Key="CommonMenu" TargetType="Menu" BasedOn="{StaticResource {x:Static pu:StyleKeys.MenuStyle}}">
        <Setter Property="Background" Value="{StaticResource PrimaryColor}"/>
        <Setter Property="Background" Value="{DynamicResource PrimaryColor}"/>
        <Setter Property="Foreground" Value="#FFF"/>
        <Setter Property="pu:IconHelper.FontFamily" Value="{StaticResource iconfont}"/>
        <Setter Property="pu:IconHelper.Margin" Value="0,0,10,0"/>
@@ -154,21 +155,11 @@
    </Style>
    <Style x:Key="CardBoarder" TargetType="Border">
        <Setter Property="BorderBrush" Value="{StaticResource CommonBoarder}"/>
        <Setter Property="BorderBrush" Value="{DynamicResource CommonBoarder}"/>
        <Setter Property="BorderThickness" Value="2"/>
        <Setter Property="Background" Value="#f3f9ff"/>
        <Setter Property="Margin" Value="5"/>
        <Setter Property="Padding" Value="10"/>
    </Style>
    <Style x:Key="DefaultDataGridRow" TargetType="DataGridRow" BasedOn="{StaticResource {x:Static pu:StyleKeys.DataGridRowStyle}}">
        <Setter Property="Background" Value="White"/>
        <Style.Triggers>
            <Trigger Property="AlternationIndex" Value="1">
                <Setter Property="Background" Value="#eeeeee"/>
            </Trigger>
        </Style.Triggers>
    </Style>
    <Style x:Key="TableTextBlock" TargetType="TextBlock">
@@ -178,70 +169,14 @@
        <Setter Property="TextWrapping" Value="Wrap"/>
    </Style>
    <Style TargetType="DataGridCell"
       BasedOn="{StaticResource {x:Static pu:StyleKeys.DataGridCellStyle}}">
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="Padding" Value="5"/>
        <Setter Property="Margin" Value="0"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="VerticalAlignment" Value="Stretch"/>
    </Style>
    <Style x:Key="DefaultDataGrid" TargetType="DataGrid" BasedOn="{StaticResource {x:Static pu:StyleKeys.DataGridStyle}}">
        <Style.Resources>
            <Style TargetType="DataGridColumnHeader"
       BasedOn="{StaticResource {x:Static pu:StyleKeys.DataGridColumnHeaderStyle}}">
                <Setter Property="Padding" Value="10"/>
                <Setter Property="BorderThickness" Value="0"/>
            </Style>
        </Style.Resources>
        <Setter Property="RowHeight" Value="30"/>
        <Setter Property="ColumnHeaderHeight" Value="36"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderPadding" Value="0"/>
        <Setter Property="ForceCursor" Value="True"/>
        <Setter Property="SelectionMode" Value="Single"/>
        <Setter Property="RowStyle" Value="{StaticResource DefaultDataGridRow}"/>
        <Setter Property="AlternationCount" Value="2"></Setter>
        <Setter Property="Foreground" Value="#3a3a3a"/>
        <Setter Property="HorizontalGridLinesBrush" Value="{StaticResource TableBoarder}"/>
        <Setter Property="VerticalGridLinesBrush" Value="{StaticResource TableBoarder}"/>
        <Setter Property="BorderBrush" Value="{StaticResource TableBoarder}" />
        <Setter Property="AutoGenerateColumns" Value="False"/>
        <Setter Property="CanUserAddRows" Value="False"/>
        <Setter Property="CanUserSortColumns" Value="False"/>
        <Setter Property="CanUserDeleteRows" Value="False"/>
        <Setter Property="RowHeaderWidth" Value="1"/>
        <Setter Property="IsReadOnly" Value="True"/>
        <Setter Property="GridLinesVisibility" Value="All"/>
        <Setter Property="BorderThickness" Value="0"/>
        <Setter Property="BorderBrush" Value="{StaticResource CommonBoarder}"/>
        <Setter Property="FontSize" Value="{StaticResource ContentFontSize2}"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderForeground" Value="White"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderBackground" Value="{StaticResource TableHeader}"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderHoverBackground" Value="{StaticResource TableHeader}"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderSeparatorBrush" Value="{StaticResource TableBoarder}"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderSeparatorVisibility" Value="Visible"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderVerticalContentAlignment" Value="Center"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderHorizontalContentAlignment" Value="Left"/>
        <Setter Property="pu:DataGridHelper.RowHeaderSeparatorBrush" Value="{StaticResource CommonBoarder}"/>
        <Setter Property="pu:DataGridHelper.RowHoverForeground" Value="{StaticResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:DataGridHelper.RowHoverBackground" Value="{StaticResource SecondPrimaryColor}"/>
        <Setter Property="pu:DataGridHelper.RowSelectedBackground" Value="{StaticResource PrimaryColor}"/>
        <Setter Property="pu:DataGridHelper.RowSelectedForeground" Value="White"/>
        <Setter Property="pu:DataGridHelper.RowHeaderBorderThickness" Value="10,0,0,0"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderBorderThickness" Value="0"/>
        <Setter Property="pu:DataGridHelper.ColumnHeaderPadding" Value="0"/>
    </Style>
    <Style x:Key="DefaultTreeView" TargetType="TreeView" BasedOn="{StaticResource {x:Static pu:StyleKeys.TreeViewStyle}}">
        <Setter Property="pu:TreeViewHelper.ItemsHoverBackground" Value="{StaticResource SecondPrimaryColor}"/>
        <Setter Property="pu:TreeViewHelper.ItemsHoverForeground" Value="{StaticResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:TreeViewHelper.ItemsSelectedBackground" Value="{StaticResource PrimaryColor}"/>
        <Setter Property="pu:TreeViewHelper.ItemsSelectedForeground" Value="{StaticResource PrimaryColorContract}"/>
        <Style.Resources>
            <Style TargetType="ScrollBar" BasedOn="{StaticResource ScrollStyle_Mobile}"/>
        </Style.Resources>
        <Setter Property="pu:TreeViewHelper.ItemsHoverBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="pu:TreeViewHelper.ItemsHoverForeground" Value="{DynamicResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:TreeViewHelper.ItemsSelectedBackground" Value="{DynamicResource PrimaryColor}"/>
        <Setter Property="pu:TreeViewHelper.ItemsSelectedForeground" Value="{DynamicResource PrimaryColorContract}"/>
        <Setter Property="pu:TreeViewHelper.ItemsMargin" Value="0"/>
        <Setter Property="pu:TreeViewHelper.ItemsPadding" Value="7,5,7,5"/>
        <Setter Property="dp:TreeViewHelper.AutoExpand" Value="True"/>
@@ -252,12 +187,12 @@
    <Style x:Key="DefaultTabControl" TargetType="TabControl">
        <Setter Property="pu:TabControlHelper.ItemsHorizontalHeaderAlignment" Value="Left"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverBackground" Value="{StaticResource SecondPrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverForeground" Value="{StaticResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverForeground" Value="{DynamicResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineMargin" Value="0,5,0,5"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineThickness" Value="4"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineVisibility" Value="Visible"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineBrush" Value="{StaticResource PrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineBrush" Value="{DynamicResource PrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineThickness" Value="2"/>
    </Style>
@@ -280,7 +215,7 @@
    </Style>
    <Style x:Key="ModalWindow" TargetType="pu:WindowX">
        <Setter Property="pu:WindowXCaption.Background" Value="{StaticResource ReHoriBar}"/>
        <Setter Property="pu:WindowXCaption.Background" Value="{DynamicResource ReHoriBar}"/>
        <Setter Property="pu:WindowXModalDialog.ButtonStyle" Value="{StaticResource ModalButton}"/>
        <Setter Property="pu:WindowXCaption.Foreground" Value="#FFF"/>
        <Setter Property="pu:WindowXCaption.Buttons" Value="Close"/>
@@ -290,17 +225,117 @@
        <Setter Property="pu:WindowXModalDialog.OKButtonContent" 
                Value="{DynamicResource App.Save}"/>
        <Setter Property="pu:WindowXModalDialog.ButtonPanelMargin" Value="0,30,10,10"/>
        <Setter Property="InteropOwnersMask" Value="False"/>
    </Style>
    <Style x:Key="DefaultListBox" TargetType="ListBox" BasedOn="{StaticResource {x:Static pu:StyleKeys.ListBoxStyle}}">
        <Setter Property="pu:ListBoxHelper.ItemsHoverBackground" Value="{StaticResource SecondPrimaryColor}"/>
        <Setter Property="pu:ListBoxHelper.ItemsHoverForeground" Value="{StaticResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:ListBoxHelper.ItemsSelectedBackground" Value="{StaticResource PrimaryColor}"/>
        <Setter Property="pu:ListBoxHelper.ItemsSelectedForeground" Value="{StaticResource PrimaryColorContract}"/>
        <Setter Property="pu:ListBoxHelper.ItemsHoverBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="pu:ListBoxHelper.ItemsHoverForeground" Value="{DynamicResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:ListBoxHelper.ItemsSelectedBackground" Value="{DynamicResource PrimaryColor}"/>
        <Setter Property="pu:ListBoxHelper.ItemsSelectedForeground" Value="{DynamicResource PrimaryColorContract}"/>
        <Setter Property="pu:ListBoxHelper.ItemsMargin" Value="0"/>
        <Setter Property="pu:ListBoxHelper.ItemsPadding" Value="7,5,7,5"/>
        <Setter Property="FontSize" Value="{StaticResource ContentFontSize}"/>
        <Setter Property="Background" Value="Transparent"/>
        <Setter Property="BorderThickness" Value="0"/>
    </Style>
    <Style x:Key="HeaderTabControl" TargetType="TabControl">
        <Setter Property="pu:TabControlHelper.HeaderPanelAlignment" Value="Stretch"/>
        <Setter Property="pu:TabControlHelper.ItemsBackground" Value="{DynamicResource VerBar}"/>
        <Setter Property="pu:TabControlHelper.ItemsForeground" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedForeground" Value="{DynamicResource PrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsFontSize" Value="14"/>
        <Setter Property="pu:TabControlHelper.ItemsHeight" Value="30"/>
        <Setter Property="pu:TabControlHelper.ItemsHorizontalHeaderAlignment" Value="Left"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverForeground" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsPadding" Value="20,5,0,0"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineCornerRadius" Value="4"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineMargin" Value="0,5,0,5"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineThickness" Value="4"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineVisibility" Value="Visible"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedBackground" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineBrush" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineThickness" Value="2"/>
        <Setter Property="pu:TabControlHelper.ItemsWidth" Value="100"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type TabControl}">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="*"/>
                        </Grid.RowDefinitions>
                        <Border BorderThickness="1,1,1,0" BorderBrush="#acacac" Background="{DynamicResource VerBar}" Padding="2,2,10,0">
                            <TabPanel x:Name="HeaderPanel" Grid.Row="0" Panel.ZIndex="1" IsItemsHost="True"/>
                        </Border>
                        <Border Grid.Row="1" BorderBrush="{TemplateBinding BorderBrush}"
        BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}">
                            <ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent"/>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <Style x:Key="HorTabControl" TargetType="TabControl">
        <Setter Property="pu:TabControlHelper.HeaderPanelAlignment" Value="Stretch"/>
        <Setter Property="pu:TabControlHelper.ItemsBackground" Value="{DynamicResource VerBar}"/>
        <Setter Property="pu:TabControlHelper.ItemsForeground" Value="#FFFFFF"/>
        <Setter Property="pu:TabControlHelper.ItemsFontSize" Value="14"/>
        <Setter Property="pu:TabControlHelper.ItemsHeight" Value="30"/>
        <Setter Property="pu:TabControlHelper.ItemsHorizontalHeaderAlignment" Value="Left"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="pu:TabControlHelper.ItemsHoverForeground" Value="{DynamicResource SecondPrimaryColorContract}"/>
        <Setter Property="pu:TabControlHelper.ItemsPadding" Value="20,0,20,0"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineCornerRadius" Value="4"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineMargin" Value="0,5,0,5"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineThickness" Value="4"/>
        <Setter Property="pu:TabControlHelper.ItemsRibbonLineVisibility" Value="Visible"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedBackground" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineBrush" Value="#FFF"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedRibbonLineThickness" Value="2"/>
        <Setter Property="pu:TabControlHelper.ItemsSelectedBackground" Value="#FFF"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="{x:Type TabControl}">
                    <Grid>
                        <Grid.RowDefinitions>
                            <RowDefinition Height="Auto"/>
                            <RowDefinition Height="*"/>
                        </Grid.RowDefinitions>
                        <Border BorderThickness="1,1,1,0" BorderBrush="#acacac" Background="{DynamicResource VerBar}" Padding="2,2,10,0">
                            <TabPanel x:Name="HeaderPanel" Grid.Row="0" Panel.ZIndex="1" IsItemsHost="True"/>
                        </Border>
                        <Border Grid.Row="1" BorderBrush="{TemplateBinding BorderBrush}"
BorderThickness="1,0,1,1" Background="{TemplateBinding Background}">
                            <ContentPresenter x:Name="PART_SelectedContentHost" ContentSource="SelectedContent"/>
                        </Border>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <Style x:Key="DefaultPageItem" TargetType="pu:PaginationItem">
        <Setter Property="Cursor" Value="Hand" />
        <Setter Property="MinWidth" Value="30" />
        <Setter Property="Width" Value="Auto" />
        <Setter Property="Width" Value="Auto" />
    </Style>
    <Style x:Key="DefaultPage" TargetType="pu:Pagination">
        <Setter Property="Height" Value="30"/>
        <Setter Property="HorizontalAlignment" Value="Right"/>
        <Setter Property="Foreground" Value="Black" />
        <Setter Property="ItemsBackground" Value="Transparent"/>
        <Setter Property="ItemsCornerRadius" Value="12"/>
        <Setter Property="ItemsSelectedBackground" Value="{DynamicResource SecondPrimaryColor}"/>
        <Setter Property="ItemContainerStyle" Value="{StaticResource DefaultPageItem}"/>
    </Style>
</ResourceDictionary>