You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

163 lines
6.6 KiB

  1. <UserControl
  2. x:Class="ModbusDemo.VIew.SettingsUC"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:local="clr-namespace:ModbusDemo.VIew"
  8. xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  9. xmlns:EnumEx="clr-namespace:ModbusDemo.Extension"
  10. xmlns:sys="clr-namespace:System;assembly=mscorlib"
  11. xmlns:ports="clr-namespace:System.IO.Ports;assembly=System"
  12. xmlns:viewmodel="clr-namespace:ModbusDemo.VIewModel"
  13. d:DataContext="{d:DesignInstance Type=viewmodel:SettingsUCViewModel,
  14. IsDesignTimeCreatable=True}"
  15. d:DesignHeight="450"
  16. d:DesignWidth="800"
  17. d:Background="White"
  18. mc:Ignorable="d">
  19. <UserControl.Resources>
  20. <EnumEx:EnumBindingSource x:Key="enumParity" EnumType="{x:Type ports:Parity}">
  21. </EnumEx:EnumBindingSource>
  22. <EnumEx:EnumBindingSource x:Key="enumStopBits" EnumType="{x:Type ports:StopBits}">
  23. </EnumEx:EnumBindingSource>
  24. </UserControl.Resources>
  25. <Grid>
  26. <Grid.RowDefinitions>
  27. <RowDefinition>
  28. </RowDefinition>
  29. <RowDefinition>
  30. </RowDefinition>
  31. <RowDefinition>
  32. </RowDefinition>
  33. </Grid.RowDefinitions>
  34. <Grid Grid.Row="1">
  35. <Grid.ColumnDefinitions>
  36. <ColumnDefinition>
  37. </ColumnDefinition>
  38. <ColumnDefinition>
  39. </ColumnDefinition>
  40. <ColumnDefinition>
  41. </ColumnDefinition>
  42. <ColumnDefinition>
  43. </ColumnDefinition>
  44. <ColumnDefinition>
  45. </ColumnDefinition>
  46. </Grid.ColumnDefinitions>
  47. <!-- 这是设置串口的选择 -->
  48. <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center">
  49. <TextBlock Margin="20,0,0,5" Text="串口选择">
  50. </TextBlock>
  51. <ComboBox
  52. Width="80"
  53. Height="30"
  54. Margin="10,0,0,5"
  55. HorizontalAlignment="Left"
  56. materialDesign:HintAssist.Hint="COM3"
  57. SelectedItem="{Binding PortName}">
  58. <ComboBoxItem Content="COM1" />
  59. <ComboBoxItem Content="COM2" />
  60. <ComboBoxItem Content="COM3" />
  61. <ComboBoxItem Content="COM4" />
  62. <ComboBoxItem Content="COM5" />
  63. <ComboBoxItem Content="COM6" />
  64. </ComboBox>
  65. </StackPanel>
  66. <!-- 设置波特率 -->
  67. <StackPanel Grid.Column="1" HorizontalAlignment="Center" VerticalAlignment="Center">
  68. <TextBlock Margin="20,0,0,5" Text="波特率">
  69. </TextBlock>
  70. <ComboBox
  71. Width="80"
  72. Height="30"
  73. Margin="10,0,0,5"
  74. HorizontalAlignment="Left"
  75. materialDesign:HintAssist.Hint="9600"
  76. SelectedItem="{Binding BaudRate}">
  77. <ComboBoxItem Content="4800" />
  78. <ComboBoxItem Content="9600" />
  79. <ComboBoxItem Content="19200" />
  80. <ComboBoxItem Content="38400" />
  81. <ComboBoxItem Content="5600" />
  82. <ComboBoxItem Content="57600" />
  83. <ComboBoxItem Content="115200" />
  84. <ComboBoxItem Content="187500" />
  85. </ComboBox>
  86. </StackPanel>
  87. <!-- 这是设置校验位的选择 -->
  88. <StackPanel Grid.Column="2" HorizontalAlignment="Center" VerticalAlignment="Center">
  89. <TextBlock Margin="10,0,0,5" Text="校验位选择">
  90. </TextBlock>
  91. <ComboBox
  92. Width="80"
  93. Height="30"
  94. Margin="10,0,0,5"
  95. HorizontalAlignment="Left"
  96. ItemsSource="{Binding Source={StaticResource enumParity}}"
  97. SelectedItem="{Binding Parity}">
  98. </ComboBox>
  99. </StackPanel>
  100. <!-- 这是设置停止位的选择 -->
  101. <StackPanel Grid.Column="3" HorizontalAlignment="Center" VerticalAlignment="Center">
  102. <TextBlock Margin="10,0,0,5" Text="停止位选择">
  103. </TextBlock>
  104. <ComboBox
  105. Width="80"
  106. Height="30"
  107. Margin="10,0,0,5"
  108. HorizontalAlignment="Left"
  109. ItemsSource="{Binding Source={StaticResource enumStopBits}}"
  110. SelectedItem="{Binding StopBits}">
  111. </ComboBox>
  112. </StackPanel>
  113. <!-- 这是设置数据位的选择 -->
  114. <StackPanel Grid.Column="4" HorizontalAlignment="Center" VerticalAlignment="Center">
  115. <TextBlock Margin="10,0,0,5" Text="数据位选择">
  116. </TextBlock>
  117. <ComboBox
  118. Width="80"
  119. Height="30"
  120. Margin="10,0,0,5"
  121. HorizontalAlignment="Left"
  122. materialDesign:HintAssist.Hint="8"
  123. SelectedItem="{Binding DataBits}">
  124. <ComboBoxItem Content="7">
  125. </ComboBoxItem>
  126. <ComboBoxItem Content="8">
  127. </ComboBoxItem>
  128. </ComboBox>
  129. </StackPanel>
  130. </Grid>
  131. <!-- 两个按钮的定义 -->
  132. <Grid Grid.Row="2">
  133. <Grid.ColumnDefinitions>
  134. <ColumnDefinition>
  135. </ColumnDefinition>
  136. <ColumnDefinition>
  137. </ColumnDefinition>
  138. </Grid.ColumnDefinitions>
  139. <Button
  140. Width="80"
  141. Height="40"
  142. materialDesign:ButtonAssist.CornerRadius="20"
  143. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  144. Content="连接"
  145. Command="{Binding ConnectionCmm}">
  146. </Button>
  147. <Button
  148. Grid.Column="1"
  149. Width="80"
  150. Height="40"
  151. materialDesign:ButtonAssist.CornerRadius="20"
  152. Style="{StaticResource MaterialDesignRaisedDarkButton}"
  153. Content="断开"
  154. Command="{Binding DisConnectionCmm}">
  155. </Button>
  156. </Grid>
  157. </Grid>
  158. </UserControl>