123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172 |
- <UserControl x:Class="MV485.uc.UCDeviceFinder"
- 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:local="clr-namespace:MV485.uc"
- xmlns:zdfflatui="clr-namespace:ZdfFlatUI;assembly=WPF.UI"
- xmlns:local1="clr-namespace:MV485.helper"
- mc:Ignorable="d"
- Padding="5,2,5,5"
- Background="WhiteSmoke"
- Unloaded="UserControl_Unloaded"
- d:DesignHeight="800" d:DesignWidth="1366">
- <Grid>
- <Grid.RowDefinitions>
- <RowDefinition Height="Auto"/>
-
- <RowDefinition Height="*"/>
- <RowDefinition Height="Auto"/>
- </Grid.RowDefinitions>
- <!-- 控制面板 -->
- <StackPanel Orientation="Horizontal" Margin="10 10 10 5" >
- <TextBlock Text="端口号: " VerticalAlignment="Center" FontSize="14px" Margin="0 0 0 0" />
- <ComboBox x:Name="cmbPortNames" DisplayMemberPath="ModelName" SelectedValuePath="PortName"
- Width="180" Padding="5 0 0 0" Margin="2" FontSize="13px" VerticalContentAlignment="Center"/>
- <zdfflatui:FlatButton x:Name="btnRefreshPorts" HorizontalAlignment="Center" Background="#2196F3"
- Foreground="White" Content="🔄" ToolTip="刷新并重新加载串口列表"
- Click="btnRefreshPorts_Click" Margin="5 0 5 0" Width="30" Height="30" FontSize="20px" />
-
- <TextBlock Text="波特率: " VerticalAlignment="Center" FontSize="14" Margin="10 0 0 0" />
- <local1:MultiSelectComboBox x:Name="mcmbBaudrate" Width="100" Height="26" Padding="0" FontSize="13px" Margin="10 0 2 0"/>
-
- <TextBlock Text="地址范围: " VerticalAlignment="Center" FontSize="14" Margin="10 0 0 0" />
- <TextBox x:Name="txtMinId" Text="1" FontSize="13" Width="30" Margin="0 0 0 0"
- PreviewTextInput="TextBox_PreviewTextInput" MaxLength="3"
- TextAlignment="Left" VerticalContentAlignment="Center" Height="24" />
- <TextBlock Text="-" VerticalAlignment="Center" FontSize="14" Margin="5 0 5 0" />
- <TextBox x:Name="txtMaxId" FontSize="13" Text="255" Width="30" Margin="0 0 0 0"
- PreviewTextInput="TextBox_PreviewTextInput" MaxLength="3"
- TextAlignment="Left" VerticalContentAlignment="Center" Height="24" />
-
- <TextBlock Text="超时时间:" VerticalAlignment="Center" FontSize="14" Margin="10 0 0 0" />
- <TextBox x:Name="txtIdTimeout" FontSize="13" Text="100" Width="40" Margin="5 0 0 0"
- PreviewTextInput="TextBox_PreviewTextInput" MaxLength="4"
- TextAlignment="Left" VerticalContentAlignment="Center" Height="24" />
- <TextBlock Text="ms/每地址" VerticalAlignment="Center" FontSize="13" Margin="5 0 5 0" />
-
- <CheckBox x:Name="chkSearchSingle" Content="只搜索一台设备" IsChecked="True"
- VerticalAlignment="Center" FontSize="14" Margin="10 0 10 0" />
- <zdfflatui:FlatButton x:Name="btnSearch" Background="#4CAF50" Foreground="White" Content="开始搜索" Width="80"
- Click="btnSearch_Click" Padding="10 0 10 0" Height="28" FontSize="13" Margin="10 0 0 0" />
-
- <!--<Button Content="刷新串口" Click="btnRefreshPorts_Click" Margin="5" FontSize="14px" Padding="5 2 5 2" />-->
- <!--<Button x:Name="btnSearch" Content="开始搜索" Click="btnSearch_Click" Margin="5" FontSize="14px" Padding="5 2 5 2" />-->
- <!--<Button Content="清空日志" Click="btnClearLog_Click" Margin="5" FontSize="14px" Padding="5 2 5 2"/>-->
-
- <zdfflatui:FlatButton x:Name="btnClearLog" HorizontalAlignment="Center" Background="#FF4C4C" Foreground="White" Width="80"
- Content="清空日志" Click="btnClearLog_Click" Padding="10 0 10 0" Height="28" FontSize="13" Margin="10 0 0 0" />
-
- </StackPanel>
- <Border Grid.Row="1" Margin="10" BorderBrush="DarkGray" BorderThickness="1">
- <Grid Grid.Row="1">
- <Grid.ColumnDefinitions>
- <ColumnDefinition Width="*" />
- <ColumnDefinition Width="*" />
- </Grid.ColumnDefinitions>
- <Grid Grid.Column="0" Margin="10 0 10 10">
- <Grid.RowDefinitions>
- <RowDefinition Height="35" />
- <RowDefinition Height="*" />
- </Grid.RowDefinitions>
- <StackPanel Grid.Row="0" Orientation="Horizontal">
- <TextBlock Text="已搜索到的设备" FontSize="14" VerticalAlignment="Center" />
- </StackPanel>
- <ListView x:Name="lvResult" Grid.Row="1" Margin="0">
- <ListView.Resources>
- <!-- 设置标题字体样式 -->
- <Style TargetType="GridViewColumnHeader">
- <Setter Property="FontSize" Value="14"/>
- <Setter Property="Foreground" Value="DarkBlue"/>
- <Setter Property="Height" Value="26"/>
- <!-- 设置标题的高度 -->
- <Setter Property="VerticalAlignment" Value="Center"/>
- <!-- 设置垂直对齐方式 -->
- </Style>
- <!-- 设置内容字体样式 -->
- <Style TargetType="TextBlock">
- <Setter Property="FontSize" Value="13"/>
- <Setter Property="Foreground" Value="Black"/>
- </Style>
- </ListView.Resources>
- <ListView.View>
- <GridView>
- <GridViewColumn Header="端口号" Width="120" DisplayMemberBinding="{Binding PortName}"/>
- <GridViewColumn Header="波特率" Width="120" DisplayMemberBinding="{Binding BaudRate}"/>
- <GridViewColumn Header="485地址" Width="120" DisplayMemberBinding="{Binding DeviceAddress}"/>
- </GridView>
- </ListView.View>
- </ListView>
- </Grid>
- <Grid Grid.Column="1" Margin="10 0 10 10">
- <Grid.RowDefinitions>
- <RowDefinition Height="35" />
- <RowDefinition Height="*" />
- </Grid.RowDefinitions>
- <StackPanel Grid.Row="0" Orientation="Horizontal">
- <TextBlock Text="搜索日志" FontSize="14" VerticalAlignment="Center" />
- </StackPanel>
- <ListView x:Name="lvLogs" Grid.Row="1" Margin="0">
- <ListView.ContextMenu>
- <ContextMenu>
- <!--<MenuItem Header="复制消息" Click="MenuItem_CopyMessage_Click"/>-->
- <MenuItem x:Name="miDeleteSlave" Header="复制消息" FontSize="13" Foreground="Blue" Click="MenuItem_CopyMessage_Click" >
- <MenuItem.Icon>
- <Image Source="pack://application:,,,/MV485;component/Assest/copy.png" Width="16" Height="16"/>
- </MenuItem.Icon>
- </MenuItem>
- </ContextMenu>
- </ListView.ContextMenu>
- <ListView.Resources>
- <!-- 设置标题字体样式 -->
- <Style TargetType="GridViewColumnHeader">
- <Setter Property="FontSize" Value="14"/>
- <Setter Property="Foreground" Value="DarkBlue"/>
- <Setter Property="Height" Value="26"/>
- <!-- 设置标题的高度 -->
- <Setter Property="VerticalAlignment" Value="Center"/>
- <!-- 设置垂直对齐方式 -->
- </Style>
- <!-- 设置内容字体样式 -->
- <Style TargetType="TextBlock">
- <Setter Property="FontSize" Value="13"/>
- <Setter Property="Foreground" Value="Black"/>
- </Style>
- </ListView.Resources>
- <ListView.View>
- <GridView>
- <GridViewColumn Header="时间" Width="120" DisplayMemberBinding="{Binding Time}"/>
- <!--<GridViewColumn Header="消息" Width="600" DisplayMemberBinding="{Binding Message}"/>-->
- <!-- "消息" 列,支持换行 -->
- <GridViewColumn Header="消息" Width="400">
- <GridViewColumn.CellTemplate>
- <DataTemplate>
- <TextBlock Text="{Binding Message}" TextWrapping="Wrap"/>
- </DataTemplate>
- </GridViewColumn.CellTemplate>
- </GridViewColumn>
- </GridView>
- </ListView.View>
- </ListView>
- </Grid>
-
- </Grid>
- </Border>
-
- <!-- 结果显示 -->
- <TextBlock x:Name="txtResult" Grid.Row="2" FontSize="14" FontWeight="Bold" Margin="10" Foreground="Green" Visibility="Collapsed"/>
- </Grid>
- </UserControl>
|