C#中利用binding循环发送指令

刚刚接触C#,终于成功一个小方法,来跟大家分享一下

一共设置十个命令,最初只显示一个,点击展开箭头显示全部。

首先只有被勾选的命令才会循环触发,其次要设置循环次数与时间间隔

在命令1到命令10中,点击循环按钮,会触发选中的命令(IsCheck),也可以设置每两条命令直接间隔时间,亦可以设置整体循环一次的间隔时间。

命令的循环是根据从命令一到命令十的顺序执行。

活不多说直接上代码

<Window x:Class="WpfApp1.MainWindow"
        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:local="clr-namespace:WpfApp1"
        mc:Ignorable="d"
        Title="MainWindow" Height="900" Width="800" WindowStartupLocation="CenterScreen" >
    <Grid>
        <DockPanel>
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition Height="50"/>
                    <RowDefinition/>
                    <RowDefinition Height="150"/>
                </Grid.RowDefinitions>

                <DockPanel Grid.Row="0" Background="#BDDDC8" >
                    <CheckBox x:Name="checkOkOrNo" IsChecked="{Binding m_Check1}" Content="命令1" Margin="5" Width="70.6" />
                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check1_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                    <TextBox  Text="{Binding m_Check1_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                    <Button   IsEnabled="{Binding m_Check1_Send}" Content="发送"  Background="White" Foreground="#FFD863F1"  Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send1_Byte_Click"/>
                </DockPanel>
                <DockPanel Grid.Row="1">
                    <Expander  Header="展开剩余内容" Background="AliceBlue" >
                        <Grid>
                            <StackPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,2,0,2">
                                    <CheckBox x:Name="checkOkOrNo2" IsChecked="{Binding m_Check2}" Content="命令2" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check2_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check2_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check2_Send}" Content="发送"  Background="White" Foreground="#FFD863F1"  Margin="5" Padding="5" Width="140" BorderBrush="#FFEE4949" Click="Send2_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo3" IsChecked="{Binding m_Check3}" Content="命令3" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check3_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check3_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check3_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send3_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo4" IsChecked="{Binding m_Check4}" Content="命令4" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check4_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check4_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check4_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send4_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo5" IsChecked="{Binding m_Check5}" Content="命令5" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check5_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check5_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check5_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send5_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo6" IsChecked="{Binding m_Check6}" Content="命令6" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check6_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check6_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check6_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send6_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo7" IsChecked="{Binding m_Check7}" Content="命令7" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check7_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check7_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check7_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send7_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo8" IsChecked="{Binding m_Check8}" Content="命令8" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check8_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check8_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check8_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send8_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo9" IsChecked="{Binding m_Check9}" Content="命令9" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check9_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check9_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check9_Send}" Content="发送"  Background="White" Foreground="#FFD863F1" Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949" Click="Send9_Byte_Click"/>
                                </DockPanel>
                                <DockPanel Background="#BDDDC8" Margin="0,0,0,2" >
                                    <CheckBox x:Name="checkOkOrNo10" IsChecked="{Binding m_Check10}" Content="命令10" Margin="5" Width="70.6"/>
                                    <TextBox  Width="75"  Margin="5" Text="{Binding m_Check10_CmdSend_Text ,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" FontSize="15" TextWrapping="Wrap" />
                                    <TextBox  Text="{Binding m_Check10_CmdSend_Byte}" Margin="5" Padding="0,7,0,5" Width="337"/>
                                    <Button   IsEnabled="{Binding m_Check10_Send}" Content="发送"  Background="White" Foreground="#FFD863F1"  Width="140" Margin="5" Padding="5" BorderBrush="#FFEE4949"  Click="Send10_Byte_Click"/>
                                </DockPanel>
                            </StackPanel>
                        </Grid>
                    </Expander>
                </DockPanel>
                <DockPanel Grid.Row="2">
                    <Border Margin="2" CornerRadius="4" BorderBrush="#FF9090E8" BorderThickness="1">
                        <DockPanel>
                            <Grid>
                                <Grid.RowDefinitions>
                                    <RowDefinition Height="50"/>
                                    <RowDefinition Height="50"/>
                                    <RowDefinition Height="50"/>
                                </Grid.RowDefinitions>

                                <DockPanel Grid.Row="0" >
                                    <Label Content="循环指令:" Margin="20,2,2,2" VerticalAlignment="Center" />
                                    <Label Content="1." Margin="10,2,2,2" VerticalAlignment="Center" />
                                    <Label Content="设置循环指令:" Margin="2,2,2,2" VerticalAlignment="Center" />
                                    <Label Content="循环" VerticalAlignment="Center" />
                                    <TextBox Text="{Binding ROUND_N}" Width="30" VerticalAlignment="Center" />
                                    <Label Content="次" VerticalAlignment="Center" />
                                    <Button x:Name="hhhhh" Click="ROUND_BT_ADD_Click"  HorizontalAlignment="Left" Margin="2,5,2,5" Content="完成" Background="White" Foreground="#FFD863F1" FontSize="20"  Padding="5" BorderBrush="#FFEE4949" />

                                </DockPanel>
                                <DockPanel Grid.Row="1">
                                    <Label Content="2." Margin="110,2,2,2" VerticalAlignment="Center" />
                                    <Label Content="设置间隔时间:" Margin="2,2,2,2" VerticalAlignment="Center" />
                                    <Label Content="命令间隔时间:" Margin="2,2,2,2" VerticalAlignment="Center" />
                                    <TextBox Text="{Binding SLEEP_VALUE_1}" Width="100" Margin="2,10,2,10" VerticalContentAlignment="Center" />
                                    <Label Content="毫秒" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="0,0,0,10" />
                                    <Label Content="循环间隔时间:" Margin="2,2,2,2" VerticalAlignment="Center" />
                                    <TextBox Text="{Binding SLEEP_VALUE_2}" Width="100" Margin="2,10,2,10" VerticalContentAlignment="Center" />
                                    <Label Content="毫秒" HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="0,0,0,10" />
                                    <Button Click="ROUND_SJ_ADD_Click"  HorizontalAlignment="Left" Margin="2,5,2,5" Content="完成" Background="White" Foreground="#FFD863F1" FontSize="20"  Padding="5" BorderBrush="#FFEE4949" />
                                </DockPanel>
                                <DockPanel Grid.Row="2">
                                    <Button Click="RUN_Round_Click" Background="White" Foreground="#FFD863F1" FontSize="20" Margin="5,5,5,10" Padding="5" BorderBrush="#FFEE4949" HorizontalAlignment="Left" Content="运行" />
                                </DockPanel>
                            </Grid>
                        </DockPanel>
                    </Border>
                </DockPanel>
            </Grid>
        </DockPanel>
    </Grid>
</Window>

上面是WPF应用程序中的界面代码,界面随便一做,仅供参考,主要查看binding的绑定形式

binding绑定主要用到数据类型,与set和get方法等,其次要有接口方法。

通过在WPF框架中利用binding绑定,然后在C#中编辑显示的内容

也是利用这种绑定的办法构建的循环系统

我的C#代码中,有很多using引用在本方法中没有被使用到,因此可以删掉。

代码写完了,方法也实现了。就是感觉内容太繁琐。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace WpfApp1
{
    /// <summary>
    /// Interaction logic for MainWindow.xaml
    /// </summary>
    public partial class MainWindow : Window
    {
        public static Run_Ui_Value m_Run_Ui_value = new Run_Ui_Value();
        public MainWindow()
        {
            InitializeComponent();
            Grid grid = new Grid();
            grid.HorizontalAlignment = HorizontalAlignment.Center;
            grid.VerticalAlignment = VerticalAlignment.Center;
            
            
            DataContext = m_Run_Ui_value;

        }
        public class Run_Ui_Value : INotifyPropertyChanged //通知接口
        {
            /// <summary>
            /// 间隔时间
            /// </summary>
            private int _SLEEP_VALUE_1 = 1;//命令间隔时间
            public int SLEEP_VALUE_1 { get { return _SLEEP_VALUE_1; } set { _SLEEP_VALUE_1 = value; PCH("SLEEP_VALUE_1"); } }

            private int _SLEEP_VALUE_2 = 1;
            public int SLEEP_VALUE_2 { get { return _SLEEP_VALUE_2; } set { _SLEEP_VALUE_2 = value; PCH("SLEEP_VALUE_2"); } }

            /// <summary>
            /// 
            /// </summary>

            private int _ROUND_N = 1;//循环间隔时间
            public int ROUND_N { get { return _ROUND_N; } set { _ROUND_N = value; PCH("ROUND_N"); } }

            /// <summary>
            /// 
            /// </summary>
            private bool _m_Check1 = true;
            public bool m_Check1 { get { return _m_Check1; } set { _m_Check1 = value; PCH("m_Check1"); } }

            private string _m_Check1_CmdSend_Text = "在此输入字节数:";
            public string m_Check1_CmdSend_Text { get { return _m_Check1_CmdSend_Text; } set { _m_Check1_CmdSend_Text = value; PCH("m_Check1_CmdSend_Text"); } }

            private string _m_Check1_CmdSend_Byte = "输入:4F 00 88 80 00 00 00 00 要用空格分开";
            public string m_Check1_CmdSend_Byte { get { return _m_Check1_CmdSend_Byte; } set { _m_Check1_CmdSend_Byte = value; PCH("m_Check1_CmdSend_Byte"); } }

            private bool _m_Check1_Send = true;
            public bool m_Check1_Send { get { return _m_Check1_Send; } set { _m_Check1_Send = value; PCH("m_Check1_Send"); } }

            private bool _m_Check2 = false;
            public bool m_Check2 { get { return _m_Check2; } set { _m_Check2 = value; PCH("m_Check2"); } }

            private string _m_Check2_CmdSend_Text = " ";
            public string m_Check2_CmdSend_Text { get { return _m_Check2_CmdSend_Text; } set { _m_Check2_CmdSend_Text = value; PCH("m_Check2_CmdSend_Text"); } }

            private string _m_Check2_CmdSend_Byte = " ";
            public string m_Check2_CmdSend_Byte { get { return _m_Check2_CmdSend_Byte; } set { _m_Check2_CmdSend_Byte = value; PCH("m_Check2_CmdSend_Byte"); } }

            private bool _m_Check2_Send = true;
            public bool m_Check2_Send { get { return _m_Check2_Send; } set { m_Check2_Send = value; PCH("m_Check2_Send"); } }

            private bool _m_Check3 = false;
            public bool m_Check3 { get { return _m_Check3; } set { _m_Check3 = value; PCH("m_Check3"); } }

            private string _m_Check3_CmdSend_Text = " ";
            public string m_Check3_CmdSend_Text { get { return _m_Check3_CmdSend_Text; } set { _m_Check3_CmdSend_Text = value; PCH("m_Check3_CmdSend_Text"); } }

            private string _m_Check3_CmdSend_Byte = " ";
            public string m_Check3_CmdSend_Byte { get { return _m_Check3_CmdSend_Byte; } set { _m_Check3_CmdSend_Byte = value; PCH("m_Check3_CmdSend_Byte"); } }

            private bool _m_Check3_Send = true;
            public bool m_Check3_Send { get { return _m_Check3_Send; } set { m_Check3_Send = value; PCH("m_Check3_Send"); } }

            private bool _m_Check4 = false;
            public bool m_Check4 { get { return _m_Check4; } set { _m_Check4 = value; PCH("m_Check4"); } }

            private string _m_Check4_CmdSend_Text = " ";
            public string m_Check4_CmdSend_Text { get { return _m_Check4_CmdSend_Text; } set { _m_Check4_CmdSend_Text = value; PCH("m_Check4_CmdSend_Text"); } }

            private string _m_Check4_CmdSend_Byte = " ";
            public string m_Check4_CmdSend_Byte { get { return _m_Check4_CmdSend_Byte; } set { _m_Check4_CmdSend_Byte = value; PCH("m_Check4_CmdSend_Byte"); } }

            private bool _m_Check4_Send = true;
            public bool m_Check4_Send { get { return _m_Check4_Send; } set { m_Check4_Send = value; PCH("m_Check4_Send"); } }

            private bool _m_Check5 = false;
            public bool m_Check5 { get { return _m_Check5; } set { _m_Check5 = value; PCH("m_Check5"); } }

            private string _m_Check5_CmdSend_Text = " ";
            public string m_Check5_CmdSend_Text { get { return _m_Check5_CmdSend_Text; } set { _m_Check5_CmdSend_Text = value; PCH("m_Check5_CmdSend_Text"); } }

            private string _m_Check5_CmdSend_Byte = " ";
            public string m_Check5_CmdSend_Byte { get { return _m_Check5_CmdSend_Byte; } set { _m_Check5_CmdSend_Byte = value; PCH("m_Check5_CmdSend_Byte"); } }

            private bool _m_Check5_Send = true;
            public bool m_Check5_Send { get { return _m_Check5_Send; } set { m_Check5_Send = value; PCH("m_Check5_Send"); } }

            private bool _m_Check6 = false;
            public bool m_Check6 { get { return _m_Check6; } set { _m_Check6 = value; PCH("m_Check6"); } }

            private string _m_Check6_CmdSend_Text = " ";
            public string m_Check6_CmdSend_Text { get { return _m_Check6_CmdSend_Text; } set { _m_Check6_CmdSend_Text = value; PCH("m_Check6_CmdSend_Text"); } }

            private string _m_Check6_CmdSend_Byte = " ";
            public string m_Check6_CmdSend_Byte { get { return _m_Check6_CmdSend_Byte; } set { _m_Check6_CmdSend_Byte = value; PCH("m_Check6_CmdSend_Byte"); } }

            private bool _m_Check6_Send = true;
            public bool m_Check6_Send { get { return _m_Check6_Send; } set { m_Check6_Send = value; PCH("m_Check6_Send"); } }

            private bool _m_Check7 = false;
            public bool m_Check7 { get { return _m_Check7; } set { _m_Check7 = value; PCH("m_Check7"); } }

            private string _m_Check7_CmdSend_Text = " ";
            public string m_Check7_CmdSend_Text { get { return _m_Check7_CmdSend_Text; } set { _m_Check7_CmdSend_Text = value; PCH("m_Check7_CmdSend_Text"); } }

            private string _m_Check7_CmdSend_Byte = " ";
            public string m_Check7_CmdSend_Byte { get { return _m_Check7_CmdSend_Byte; } set { _m_Check7_CmdSend_Byte = value; PCH("m_Check7_CmdSend_Byte"); } }

            private bool _m_Check7_Send = true;
            public bool m_Check7_Send { get { return _m_Check7_Send; } set { m_Check7_Send = value; PCH("m_Check7_Send"); } }

            private bool _m_Check8 = false;
            public bool m_Check8 { get { return _m_Check8; } set { _m_Check8 = value; PCH("m_Check8"); } }

            private string _m_Check8_CmdSend_Text = " ";
            public string m_Check8_CmdSend_Text { get { return _m_Check8_CmdSend_Text; } set { _m_Check8_CmdSend_Text = value; PCH("m_Check8_CmdSend_Text"); } }

            private string _m_Check8_CmdSend_Byte = " ";
            public string m_Check8_CmdSend_Byte { get { return _m_Check8_CmdSend_Byte; } set { _m_Check8_CmdSend_Byte = value; PCH("m_Check8_CmdSend_Byte"); } }

            private bool _m_Check8_Send = true;
            public bool m_Check8_Send { get { return _m_Check8_Send; } set { m_Check8_Send = value; PCH("m_Check8_Send"); } }

            private bool _m_Check9 = false;
            public bool m_Check9 { get { return _m_Check9; } set { _m_Check9 = value; PCH("m_Check9"); } }

            private string _m_Check9_CmdSend_Text = " ";
            public string m_Check9_CmdSend_Text { get { return _m_Check9_CmdSend_Text; } set { _m_Check9_CmdSend_Text = value; PCH("m_Check9_CmdSend_Text"); } }

            private string _m_Check9_CmdSend_Byte = " ";
            public string m_Check9_CmdSend_Byte { get { return _m_Check9_CmdSend_Byte; } set { _m_Check9_CmdSend_Byte = value; PCH("m_Check9_CmdSend_Byte"); } }

            private bool _m_Check9_Send = true;
            public bool m_Check9_Send { get { return _m_Check9_Send; } set { m_Check9_Send = value; PCH("m_Check9_Send"); } }

            private bool _m_Check10 = false;
            public bool m_Check10 { get { return _m_Check10; } set { _m_Check10 = value; PCH("m_Check10"); } }

            private string _m_Check10_CmdSend_Text = " ";
            public string m_Check10_CmdSend_Text { get { return _m_Check10_CmdSend_Text; } set { _m_Check10_CmdSend_Text = value; PCH("m_Check10_CmdSend_Text"); } }

            private string _m_Check10_CmdSend_Byte = " ";
            public string m_Check10_CmdSend_Byte { get { return _m_Check10_CmdSend_Byte; } set { _m_Check10_CmdSend_Byte = value; PCH("m_Check10_CmdSend_Byte"); } }

            private bool _m_Check10_Send = true;
            public bool m_Check10_Send { get { return _m_Check10_Send; } set { m_Check10_Send = value; PCH("m_Check10_Send"); } }

            public event PropertyChangedEventHandler PropertyChanged;
            private void PCH(String info)
            {
                PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(info));
            }

        }


        private void Send1_Byte_Click(object sender, RoutedEventArgs e)
        {
            
            if (checkOkOrNo.IsChecked != true)
            {
                MessageBox.Show("没有选中!");
            }
            else
            {
                MessageBox.Show("命令1发送成功");
            }
        }
        private void Send2_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo2.IsChecked != true)
            {
                MessageBox.Show("没有选中2!");
            }
            else
            {
                MessageBox.Show("命令2发送成功");
            }
        }
        private void Send3_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo3.IsChecked != true)
            {
                MessageBox.Show("没有选中3!");
            }
            else
            {
                MessageBox.Show("命令3发送成功");
            }
        }
        private void Send4_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo4.IsChecked != true)
            {
                MessageBox.Show("没有选中4!");
            }
            else
            {
                MessageBox.Show("命令4发送成功");
            }
        }
        private void Send5_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo5.IsChecked != true)
            {
                MessageBox.Show("没有选中5!");
            }
            else
            {
                MessageBox.Show("命令5发送成功");
            }
        }
        private void Send6_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo6.IsChecked != true)
            {
                MessageBox.Show("没有选中6!");
            }
            else
            {
                MessageBox.Show("命令6发送成功");
            }
        }
        private void Send7_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo7.IsChecked != true)
            {
                MessageBox.Show("没有选中7!");
            }
            else
            {
                MessageBox.Show("命令7发送成功");
            }
        }
        private void Send8_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo8.IsChecked != true)
            {
                MessageBox.Show("没有选中8!");
            }
            else
            {
                MessageBox.Show("命令8发送成功");
            }
        }
        private void Send9_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo9.IsChecked != true)
            {
                MessageBox.Show("没有选中9!");
            }
            else
            {
                MessageBox.Show("命令9发送成功");
            }
        }
        private void Send10_Byte_Click(object sender, RoutedEventArgs e)
        {
            if (checkOkOrNo10.IsChecked != true)
            {
                MessageBox.Show("没有选中10!");
            }
            else
            {
                MessageBox.Show("命令10发送成功");
            }
        }

        private void ROUND_BT_ADD_Click(object sender, RoutedEventArgs e) //循环参数设置
        {
            Int32 round_Num = 0;

            round_Num = m_Run_Ui_value.ROUND_N;

            if (round_Num <= 0)
            {
                MessageBox.Show("设置错误: 循环次数 < 1 次", "ERROR");
                return;
            }
            else
                MessageBox.Show("设置完成");
        }

        private void ROUND_SJ_ADD_Click(object sender, RoutedEventArgs e) //间隔时间设置
        {
            Int32 ML_sleep = 0, XH_sheep = 0;
            ML_sleep = m_Run_Ui_value.SLEEP_VALUE_1;
            XH_sheep = m_Run_Ui_value.SLEEP_VALUE_2;

            MessageBox.Show("命令间隔时间:" + ML_sleep.ToString() + "循环间隔时间:" + XH_sheep.ToString());
        }

        private void RUN_Round_Click(object sender, RoutedEventArgs e) //循环指令下发
        {
             for (int i = 0; i < m_Run_Ui_value.ROUND_N; i++)
            {
                if (m_Run_Ui_value.m_Check1 == true)
                {
                    Send1_Byte_Click(checkOkOrNo, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check2 == true)
                {
                    Send2_Byte_Click(checkOkOrNo2, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check3 == true)
                {
                    Send3_Byte_Click(checkOkOrNo3, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check4 == true)
                {
                    Send4_Byte_Click(checkOkOrNo4, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check5 == true)
                {
                    Send5_Byte_Click(checkOkOrNo5, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check6 == true)
                {
                    Send6_Byte_Click(checkOkOrNo6, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check7 == true)
                {
                    Send7_Byte_Click(checkOkOrNo7, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check8 == true)
                {
                    Send8_Byte_Click(checkOkOrNo8, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check9 == true)
                {
                    Send9_Byte_Click(checkOkOrNo9, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                if (m_Run_Ui_value.m_Check10 == true)
                {
                    Send10_Byte_Click(checkOkOrNo10, e);
                    Thread.Sleep(m_Run_Ui_value.SLEEP_VALUE_1);
                }
                Thread.Sleep((int)m_Run_Ui_value.SLEEP_VALUE_2);
            }
            MessageBox.Show("循环完成");
        }
    }
}

C#的代码如上所示,众多代码的方法都是一样的,读者只需要理解方法,在使用时更换参数即可,没有必要全然复制我的代码。

新手发布,仅供参考,欢迎各位大神批评指导。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值