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 作为历史根节点
---
Plugin.DeviceConfig/DeviceEditModal.xaml | 182 +++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 182 insertions(+), 0 deletions(-)
diff --git a/Plugin.DeviceConfig/DeviceEditModal.xaml b/Plugin.DeviceConfig/DeviceEditModal.xaml
new file mode 100644
index 0000000..cb7c97d
--- /dev/null
+++ b/Plugin.DeviceConfig/DeviceEditModal.xaml
@@ -0,0 +1,182 @@
+<pu:WindowX x:Class="Plugin.DeviceConfig.DeviceEditModal"
+ xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
+ xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
+ xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
+ xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
+ 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"
+ xmlns:local="clr-namespace:Plugin.DeviceConfig"
+ mc:Ignorable="d"
+ Title="璁惧缂栬緫"
+ SizeToContent="Height"
+ Width="720"
+ WindowStartupLocation="CenterOwner"
+ Style="{StaticResource ModalWindow}">
+ <pu:WindowX.Resources>
+ <ResourceDictionary>
+ <ResourceDictionary.MergedDictionaries>
+ <ResourceDictionary Source="/HMI.UI;component/Style/PanuonListView.xaml"/>
+ </ResourceDictionary.MergedDictionaries>
+ </ResourceDictionary>
+ </pu:WindowX.Resources>
+
+ <Grid Margin="16">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="Auto"/>
+ </Grid.RowDefinitions>
+
+ <!-- 璁惧鍩烘湰淇℃伅 -->
+ <GroupBox Grid.Row="0" Header="璁惧淇℃伅" FontWeight="SemiBold" Margin="0,0,0,12">
+ <Grid Margin="8">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="100"/>
+ <ColumnDefinition Width="*"/>
+ <ColumnDefinition Width="100"/>
+ <ColumnDefinition Width="*"/>
+ </Grid.ColumnDefinitions>
+ <Grid.RowDefinitions>
+ <RowDefinition Height="36"/>
+ <RowDefinition Height="36"/>
+ <RowDefinition Height="36"/>
+ </Grid.RowDefinitions>
+
+ <TextBlock Grid.Row="0" Grid.Column="0" Text="璁惧ID *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/>
+ <TextBox Grid.Row="0" Grid.Column="1" x:Name="tbDeviceId" VerticalAlignment="Center"
+ Style="{StaticResource EditorTextBoxStyle}" Margin="4,0"/>
+
+ <TextBlock Grid.Row="0" Grid.Column="2" Text="璁惧绫诲瀷 *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/>
+ <ComboBox Grid.Row="0" Grid.Column="3" x:Name="cbKind" VerticalAlignment="Center" Margin="4,0"/>
+
+ <TextBlock Grid.Row="1" Grid.Column="0" Text="椹卞姩绫诲瀷" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/>
+ <TextBox Grid.Row="1" Grid.Column="1" x:Name="tbDriverType" VerticalAlignment="Center"
+ Style="{StaticResource EditorTextBoxStyle}" Margin="4,0"/>
+
+ <TextBlock Grid.Row="1" Grid.Column="2" Text="浼犺緭鏂瑰紡 *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/>
+ <ComboBox Grid.Row="1" Grid.Column="3" x:Name="cbTransport" VerticalAlignment="Center" Margin="4,0"/>
+
+ <TextBlock Grid.Row="2" Grid.Column="0" Text="杩炴帴绔偣 *" VerticalAlignment="Center" Style="{StaticResource ListTableTextBlock}"/>
+ <TextBox Grid.Row="2" Grid.Column="1" Grid.ColumnSpan="3" x:Name="tbEndpoint" VerticalAlignment="Center"
+ Style="{StaticResource EditorTextBoxStyle}" Margin="4,0"
+ pu:TextBoxHelper.Watermark="渚�: 192.168.10.124:30000 鎴� COM3"/>
+ </Grid>
+ </GroupBox>
+
+ <!-- 閫氶亾鍒楄〃 -->
+ <GroupBox Grid.Row="1" Header="閫氶亾鍒楄〃" FontWeight="SemiBold" Margin="0,0,0,12">
+ <Grid Margin="8">
+ <Grid.RowDefinitions>
+ <RowDefinition Height="Auto"/>
+ <RowDefinition Height="180"/>
+ <RowDefinition Height="Auto"/>
+ </Grid.RowDefinitions>
+
+ <StackPanel Grid.Row="0" Orientation="Horizontal" HorizontalAlignment="Right" Margin="0,0,0,4"
+ dp:StackPanelHelper.ChildSpace="8">
+ <Button x:Name="addChannelBtn" Click="AddChannel_Click" Content="+ 鏂板閫氶亾"
+ Style="{StaticResource AddBtn}" Width="100"/>
+ <Button x:Name="delChannelBtn" Click="DelChannel_Click" Content="鍒犻櫎閫氶亾"
+ Style="{StaticResource DelBtn}" Width="100"/>
+ </StackPanel>
+
+ <ListView Grid.Row="1" Style="{StaticResource DefaultListTable}" x:Name="channelListView"
+ VirtualizingPanel.IsVirtualizing="True"
+ VirtualizingPanel.VirtualizationMode="Standard">
+ <ListView.View>
+ <GridView AllowsColumnReorder="False">
+ <GridViewColumn Width="50" Header="#">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <Border Style="{StaticResource CellBorder}">
+ <TextBlock Style="{StaticResource ListTableTextBlock}"
+ Text="{Binding Converter={StaticResource lvRowNumber},
+ RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=ListViewItem,AncestorLevel=1}}"/>
+ </Border>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ <GridViewColumn Width="80" Header="ChannelId">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <Border Style="{StaticResource CellBorder}">
+ <TextBlock Style="{StaticResource ListTableTextBlock}" Text="{Binding ChannelId}"/>
+ </Border>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ <GridViewColumn Width="200" Header="Capability">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <Border Style="{StaticResource CellBorder}">
+ <TextBlock Style="{StaticResource ListTableTextBlock}" Text="{Binding Capability}"/>
+ </Border>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ <GridViewColumn Width="100" Header="MaxVoltage">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <Border Style="{StaticResource CellBorder}">
+ <TextBlock Style="{StaticResource ListTableTextBlock}" Text="{Binding MaxVoltage, StringFormat=F2}"/>
+ </Border>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ <GridViewColumn Width="100" Header="MaxCurrent">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <Border Style="{StaticResource CellBorder}">
+ <TextBlock Style="{StaticResource ListTableTextBlock}" Text="{Binding MaxCurrent, StringFormat=F2}"/>
+ </Border>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ <GridViewColumn Width="100" Header="鎿嶄綔">
+ <GridViewColumn.CellTemplate>
+ <DataTemplate>
+ <StackPanel Orientation="Horizontal" dp:StackPanelHelper.ChildSpace="6">
+ <Button x:Name="editChBtn" Style="{StaticResource EditLink}" Click="EditChannel_Click" Tag="{Binding}"/>
+ <Button x:Name="delChBtn" Style="{StaticResource DeleteLink}" Click="DeleteChannel_Click" Tag="{Binding}"/>
+ </StackPanel>
+ </DataTemplate>
+ </GridViewColumn.CellTemplate>
+ </GridViewColumn>
+ </GridView>
+ </ListView.View>
+ </ListView>
+
+ <!-- 閫氶亾缂栬緫琛� -->
+ <Grid Grid.Row="2" Margin="0,6,0,0">
+ <Grid.ColumnDefinitions>
+ <ColumnDefinition Width="80"/>
+ <ColumnDefinition Width="*"/>
+ <ColumnDefinition Width="100"/>
+ <ColumnDefinition Width="100"/>
+ <ColumnDefinition Width="80"/>
+ </Grid.ColumnDefinitions>
+ <TextBox Grid.Column="0" x:Name="tbChId" Style="{StaticResource EditorTextBoxStyle}"
+ pu:TextBoxHelper.Watermark="缂栧彿" Margin="0,0,4,0"/>
+ <TextBox Grid.Column="1" x:Name="tbChCap" Style="{StaticResource EditorTextBoxStyle}"
+ pu:TextBoxHelper.Watermark="鑳藉姏鎻忚堪" Margin="0,0,4,0"/>
+ <TextBox Grid.Column="2" x:Name="tbChVolt" Style="{StaticResource EditorTextBoxStyle}"
+ pu:TextBoxHelper.Watermark="鏈�澶х數鍘�" Margin="0,0,4,0"/>
+ <TextBox Grid.Column="3" x:Name="tbChCurr" Style="{StaticResource EditorTextBoxStyle}"
+ pu:TextBoxHelper.Watermark="鏈�澶х數娴�" Margin="0,0,4,0"/>
+ <Button Grid.Column="4" x:Name="saveChBtn" Click="SaveChannel_Click" Content="淇濆瓨"
+ Style="{StaticResource AddBtn}" Width="70"/>
+ </Grid>
+ </Grid>
+ </GroupBox>
+
+ <!-- 搴曢儴鎸夐挳 -->
+ <StackPanel Grid.Row="3" Orientation="Horizontal" HorizontalAlignment="Right" dp:StackPanelHelper.ChildSpace="10" Margin="0,12,0,0">
+ <Button x:Name="saveBtn" Click="SaveBtn_Click" Content="淇濆瓨"
+ Style="{StaticResource AddBtn}" Width="90"/>
+ <Button x:Name="cancelBtn" Click="CancelBtn_Click" Content="鍙栨秷"
+ Style="{StaticResource RfhBtn}" Width="90"/>
+ </StackPanel>
+ </Grid>
+</pu:WindowX>
--
Gitblit v1.9.1