BOB/ProcessManager/Setting.xaml
2025-11-17 17:19:46 +08:00

161 lines
6.5 KiB
XML

<UserControl x:Class="ProcessManager.Setting"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:local="clr-namespace:ProcessManager"
Height="500"
Width="800">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<StackPanel Margin="16"
Orientation="Vertical">
<!-- 子程序路径 -->
<StackPanel Orientation="Horizontal"
Margin="0 5">
<TextBlock Margin="0 5"
Text="子程序路径:"
materialDesign:HintAssist.Hint="子程序路径" />
<TextBox Text="{Binding Config.SubProgramFilePath,Mode=TwoWay}"
materialDesign:HintAssist.Hint="子程序路径"
Margin="0,0,0,8" />
</StackPanel>
<!-- 默认程序 -->
<StackPanel Orientation="Horizontal"
Margin="0 5">
<TextBlock Margin="0 5"
Text="子程序路径:"
materialDesign:HintAssist.Hint="子程序路径" />
<TextBox Text="{Binding Config.DefaultSubProgramFilePath,Mode=TwoWay}"
materialDesign:HintAssist.Hint="默认程序"
Margin="0,0,0,16" />
</StackPanel>
<!-- 设备列表 -->
<ListBox ItemsSource="{Binding Devices}"
SelectedItem="{Binding SelectedDevice, Mode=TwoWay}">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal"
Margin="4">
<TextBlock Text="{Binding DeviceName}"
FontSize="14"
materialDesign:HintAssist.Hint="设备名称" />
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
</StackPanel>
<StackPanel Grid.Column="1"
DataContext="{Binding SelectedDevice}">
<!-- 设备名称 -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="设备名称:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding DeviceName, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- IPAddress -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="IP地址:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.IPAddress, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- Port -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="端口:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.Port, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- IPAddress -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="串口:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.COMPort, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- Port -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="波特率:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.BaudRate, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- IPAddress -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="数据位:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.DataBit, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- Port -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="停止位:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.StopBit, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- ReadTimeout -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="读取超时:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.ReadTimeout, Mode=TwoWay}"
Width="200" />
</StackPanel>
<!-- WriteTimeout -->
<StackPanel Orientation="Horizontal"
Margin="0,2">
<TextBlock Text="写入超时:"
Width="120"
VerticalAlignment="Center" />
<TextBox Text="{Binding CommunicationConfig.WriteTimeout, Mode=TwoWay}"
Width="200" />
</StackPanel>
</StackPanel>
<StackPanel Orientation="Horizontal"
Grid.ColumnSpan="2"
VerticalAlignment="Bottom"
HorizontalAlignment="Center"
Margin="20 5">
<Button Command="{Binding SaveCommand}"
Margin="10 0"
Content="保存" />
<Button Command="{Binding CancelCommand}"
Content="取消" />
</StackPanel>
</Grid>
</UserControl>