From 9d1660270272180cd71147d6ddd53d1382643d2e Mon Sep 17 00:00:00 2001
From: wenxiangchao <wenxiangchao@ihengxin.com.cn>
Date: 星期一, 02 十一月 2026 18:00:14 +0800
Subject: [PATCH] merge: 并入远程 Initial commit 作为历史根节点
---
HMI.DataViewer/DataViewer.xaml | 267 +++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 267 insertions(+), 0 deletions(-)
diff --git a/HMI.DataViewer/DataViewer.xaml b/HMI.DataViewer/DataViewer.xaml
new file mode 100644
index 0000000..3505340
--- /dev/null
+++ b/HMI.DataViewer/DataViewer.xaml
@@ -0,0 +1,267 @@
+锘�<hb:PluginControl x:Class="HMI.DataViewer.DataViewer"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:hb="clr-namespace:HMI.Base;assembly=HMI.Base"
+ xmlns:local="clr-namespace:HMI.DataViewer"
+ mc:Ignorable="d"
+ xmlns:uic="clr-namespace:HMI.UI.Converter;assembly=HMI.UI"
+ xmlns:pw="https://opensource.panuon.com/wpf"
+ xmlns:pu="https://opensource.panuon.com/wpf-ui"
+ xmlns:dp="clr-namespace:HMI.UI.DpUtil;assembly=HMI.UI"
+ Background="{DynamicResource WorkspaceBackground}"
+ Loaded="PluginControl_Loaded"
+ d:DesignHeight="450" d:DesignWidth="800">
+ <UserControl.Resources>
+ <ResourceDictionary>
+ <ResourceDictionary.MergedDictionaries>
+ </ResourceDictionary.MergedDictionaries>
+ </ResourceDictionary>
+ </UserControl.Resources>
+ <Border Style="{StaticResource CardBoarder}">
+ <Grid dp:GridHelper.Space="10">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="7*"/>
+ <ColumnDefinition Width="3*"/>
+ </Grid.ColumnDefinitions>
+
+ <DockPanel Grid.ColumnSpan="2">
+ <StackPanel DockPanel.Dock="Right" Style="{StaticResource ButtonGroup}">
+ <Button Style="{StaticResource AddBtn}" x:Name="addBtn" Click="Button_Click"/>
+ <Button Style="{StaticResource EditBtn}" x:Name="editBtn" Click="Button_Click"/>
+ <Button Style="{StaticResource RfhBtn}" x:Name="rfhBtn" Click="Button_Click"/>
+ <Button Style="{StaticResource DelBtn}" x:Name="delBtn" Click="Button_Click"/>
+ </StackPanel>
+ <TextBlock Style="{StaticResource TitleBox}" Text="{DynamicResource Dv.Title}"/>
+ </DockPanel>
+
+ <!--<Grid>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition/>
+ <ColumnDefinition/>
+ </Grid.ColumnDefinitions>
+ </Grid>-->
+ <StackPanel Grid.Row="1" Grid.ColumnSpan="2" HorizontalAlignment="Left" Style="{StaticResource ButtonGroup}">
+
+ <TextBlock Style="{StaticResource TitleBox}" FontSize="{StaticResource ContentFontSize2}"
+ Text="{DynamicResource Dv.SelectItem}"/>
+ <ComboBox x:Name="programInput"
+ MinWidth="180"
+ SelectionChanged="programInput_SelectionChanged"/>
+
+ <TextBlock Style="{StaticResource TitleBox}" FontSize="{StaticResource ContentFontSize2}"
+ Text="{DynamicResource App.StartTime}"/>
+ <pu:DateTimePicker Style="{StaticResource TimePicker}"
+ SelectedDateTime="{x:Null}" x:Name="startTimeInput"/>
+ <TextBlock Style="{StaticResource TitleBox}" FontSize="{StaticResource ContentFontSize2}"
+ Text="{DynamicResource App.EndTime}"/>
+ <pu:DateTimePicker Style="{StaticResource TimePicker}"
+ SelectedDateTime="{x:Null}" x:Name="endTimeInput"/>
+
+
+ <Button Style="{StaticResource QueryBtn}"
+ x:Name="srhBtn" Click="Button_Click"/>
+
+ <Button Style="{StaticResource ResetBtn}"
+ x:Name="resetBtn" Click="Button_Click"/>
+
+ <Button Style="{StaticResource ExportBtn}"
+ x:Name="exportBtn" Click="Button_Click"/>
+
+ <!--<Menu x:Name="anyBtn" Style="{StaticResource CommonMenu}">
+ <MenuItem Header="鍒嗘瀽">
+ <MenuItem Header="CPK" Click="MenuItem_Click"/>
+ <MenuItem Header="RandR" />
+ </MenuItem>
+ </Menu>-->
+
+ </StackPanel>
+
+ <DockPanel Grid.Row="2" Grid.ColumnSpan="2" Margin="0,10,0,0">
+ <pu:Drawer DockPanel.Dock="Left" x:Name="DrwMenu" MinWidth="35" MaxWidth="400"
+ Padding="0"
+ ShadowColor="{x:Null}"
+ AnimationDuration="0" BorderThickness="2,0,0,2" BorderBrush="{DynamicResource CommonBoarder}">
+ <Grid>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition/>
+ <ColumnDefinition Width="Auto"/>
+ </Grid.ColumnDefinitions>
+
+ <Border Grid.ColumnSpan="2" BorderThickness="2" BorderBrush="{DynamicResource CommonBoarder}" Background="{DynamicResource VerBar}">
+ <DockPanel Height="35">
+ <ToggleButton x:Name="drawerBtn" BorderThickness="0"
+ DockPanel.Dock="Right"
+ Background="Transparent"
+ Width="35" Height="35" HorizontalAlignment="Right"
+ RenderTransformOrigin="0.5,0.5"
+ Foreground="{DynamicResource PrimaryColorContract}"
+ FontFamily="{StaticResource iconfont}"
+ Content="" IsChecked="{Binding IsOpen, ElementName=DrwMenu, Mode=TwoWay}">
+ <ToggleButton.Style>
+ <Style TargetType="ToggleButton" BasedOn="{StaticResource CommonToggle}">
+ <Style.Triggers>
+ <DataTrigger Binding="{Binding IsOpen, ElementName=DrwMenu}" Value="False">
+ <Setter Property="RenderTransform">
+ <Setter.Value>
+ <RotateTransform Angle="-90"/>
+ </Setter.Value>
+ </Setter>
+ </DataTrigger>
+ <DataTrigger Binding="{Binding IsOpen, ElementName=DrwMenu}" Value="True">
+ <Setter Property="Background" Value="Red"/>
+ <Setter Property="RenderTransform">
+ <Setter.Value>
+ <RotateTransform Angle="90"/>
+ </Setter.Value>
+ </Setter>
+ </DataTrigger>
+ <Trigger Property="IsChecked" Value="True">
+ <Setter Property="Background" Value="Red"/>
+ </Trigger>
+ </Style.Triggers>
+ </Style>
+ </ToggleButton.Style>
+ </ToggleButton>
+
+ <TextBlock Text="{DynamicResource Dv.Advanced}" FontSize="16"
+ Foreground="{DynamicResource PrimaryColorContract}"
+ VerticalAlignment="Center" HorizontalAlignment="Center"/>
+ </DockPanel>
+ </Border>
+
+
+ <Grid Grid.Row="1">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition/>
+ </Grid.RowDefinitions>
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="Auto"/>
+ <ColumnDefinition/>
+ </Grid.ColumnDefinitions>
+
+ <!--<DockPanel Margin="10,10,10,0" Grid.ColumnSpan="2">
+ <Label Content="{DynamicResource Dv.SelectItem}"/>
+ <ComboBox Grid.Column="1" x:Name="programInput" SelectionChanged="programInput_SelectionChanged"/>
+ </DockPanel>-->
+
+ <DataGrid Grid.Row="1" Grid.ColumnSpan="2" Style="{StaticResource DefaultDataGrid}"
+ IsReadOnly="False"
+ SelectionMode="Single"
+ BorderThickness="0"
+ ItemsSource="{Binding Datas}">
+ <DataGrid.Columns>
+ <DataGridTemplateColumn Header="#" IsReadOnly="True" CanUserResize="False">
+ <DataGridTemplateColumn.CellTemplate>
+ <DataTemplate>
+ <TextBlock Text="{Binding Converter={StaticResource rowNumber},
+RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow},AncestorLevel=1}}"/>
+ </DataTemplate>
+ </DataGridTemplateColumn.CellTemplate>
+ </DataGridTemplateColumn>
+
+ <DataGridTextColumn IsReadOnly="True" Width="80" Binding="{Binding Name}">
+ <DataGridTextColumn.Header>
+ <TextBlock Text="{DynamicResource Dv.Field}"/>
+ </DataGridTextColumn.Header>
+ </DataGridTextColumn>
+
+ <DataGridTemplateColumn Width="60">
+ <DataGridTemplateColumn.Header>
+ <TextBlock Text="{DynamicResource Dv.Condition}"/>
+ </DataGridTemplateColumn.Header>
+ <DataGridTemplateColumn.CellTemplate>
+ <DataTemplate>
+ <TextBlock Text="{Binding Condition}"/>
+ </DataTemplate>
+ </DataGridTemplateColumn.CellTemplate>
+ <DataGridTemplateColumn.CellEditingTemplate>
+ <DataTemplate>
+ <ComboBox SelectedValue="{Binding Condition}"
+ SelectedValuePath="Content" >
+ <ComboBoxItem Content="="/>
+ <ComboBoxItem Content="<"/>
+ <ComboBoxItem Content=">"/>
+ <ComboBoxItem Content="<="/>
+ <ComboBoxItem Content=">="/>
+ </ComboBox>
+ </DataTemplate>
+ </DataGridTemplateColumn.CellEditingTemplate>
+ </DataGridTemplateColumn>
+
+ <DataGridTextColumn Width="*" Binding="{Binding Value}" >
+ <DataGridTextColumn.Header>
+ <TextBlock Text="{DynamicResource Dv.Value}"/>
+ </DataGridTextColumn.Header>
+ <DataGridTextColumn.HeaderTemplate>
+ <DataTemplate>
+ <StackPanel Orientation="Horizontal">
+ <TextBlock Text="*" Foreground="Red" />
+ <ContentControl Content="{Binding }"/>
+ </StackPanel>
+ </DataTemplate>
+ </DataGridTextColumn.HeaderTemplate>
+ </DataGridTextColumn>
+ </DataGrid.Columns>
+
+ </DataGrid>
+ </Grid>
+
+ <Label Grid.Row="1" Grid.Column="1" Width="100" Height="34"
+ VerticalContentAlignment="Center"
+ HorizontalContentAlignment="Center"
+ Content="{DynamicResource Dv.Advanced}"
+ FontSize="16">
+ <Label.LayoutTransform>
+ <RotateTransform CenterX="25" CenterY="25" Angle="270"/>
+ </Label.LayoutTransform>
+
+ <Label.Style>
+ <Style TargetType="Label">
+ <Style.Triggers>
+ <DataTrigger Binding="{Binding IsOpen, ElementName=DrwMenu,Mode=OneWay}" Value="True">
+ <Setter Property="Visibility" Value="Collapsed"/>
+ </DataTrigger>
+ <DataTrigger Binding="{Binding IsOpen, ElementName=DrwMenu}" Value="False">
+ <Setter Property="Visibility" Value="Visible"/>
+ </DataTrigger>
+ </Style.Triggers>
+ </Style>
+ </Label.Style>
+ </Label>
+ </Grid>
+ </pu:Drawer>
+
+ <!-- SelectionUnit="CellOrRowHeader"
+SelectionMode="Extended" -->
+ <DataGrid BorderThickness="2" BorderBrush="{DynamicResource CommonBoarder}" x:Name="dataTable"
+ Style="{StaticResource DefaultDataGrid}"
+ EnableRowVirtualization="True"
+ PreviewMouseLeftButtonDown="dataTable_PreviewMouseLeftButtonDown">
+ <DataGrid.Columns>
+ <DataGridTemplateColumn Header="#" IsReadOnly="True" CanUserResize="False">
+ <DataGridTemplateColumn.CellTemplate>
+ <DataTemplate>
+ <TextBlock Text="{Binding Converter={StaticResource rowNumber},
+RelativeSource={RelativeSource Mode=FindAncestor,AncestorType={x:Type DataGridRow},AncestorLevel=1}}"/>
+ </DataTemplate>
+ </DataGridTemplateColumn.CellTemplate>
+ </DataGridTemplateColumn>
+ </DataGrid.Columns>
+ </DataGrid>
+ </DockPanel>
+ </Grid>
+ </Border>
+</hb:PluginControl>
--
Gitblit v1.9.1