AddOrEditSchView.xaml 28 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401
  1. <UserControl x:Class="PLCTool.Views.BasicConfigView.AddOrEditSchView"
  2. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  3. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  6. xmlns:local="clr-namespace:PLCTool.Views.BasicConfigView"
  7. xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
  8. xmlns:prism="http://prismlibrary.com/"
  9. BorderBrush="#CBCBCB" BorderThickness="1"
  10. Height="700" Width="1000" >
  11. <!--<prism:Dialog.WindowStyle>
  12. <Style TargetType="Window">
  13. <Setter Property="SizeToContent" Value="WidthAndHeight" />
  14. <Setter Property="ResizeMode" Value="NoResize" />
  15. <Setter Property="prism:Dialog.WindowStartupLocation" Value="CenterScreen" />
  16. <Setter Property="WindowStyle" Value="None" />
  17. </Style>
  18. </prism:Dialog.WindowStyle>-->
  19. <UserControl.Resources>
  20. <Style TargetType="TextBlock" x:Key="textBlockStyle">
  21. <Setter Property="Width" Value="80"/>
  22. <Setter Property="FontSize" Value="12"/>
  23. <Setter Property="VerticalAlignment" Value="Center"/>
  24. <Setter Property="TextAlignment" Value="Right"/>
  25. <Setter Property="Margin" Value="0,0,5,0"/>
  26. </Style>
  27. </UserControl.Resources>
  28. <Grid>
  29. <b:Interaction.Triggers>
  30. <b:EventTrigger EventName="Loaded">
  31. <b:InvokeCommandAction Command="{Binding OnLoadCommand}"/>
  32. </b:EventTrigger>
  33. </b:Interaction.Triggers>
  34. <Grid.RowDefinitions>
  35. <RowDefinition Height="50" />
  36. <RowDefinition Height="200" />
  37. <RowDefinition />
  38. </Grid.RowDefinitions>
  39. <StackPanel Orientation="Horizontal" Grid.Row="0" Margin="10">
  40. <StackPanel Orientation="Horizontal" Grid.Row="4" HorizontalAlignment="Center">
  41. <TextBlock Text="所属设备类型:" Style="{StaticResource NormalTextBlockStyle}" Margin="10,0,5,0" TextAlignment="Right" Width="80"/>
  42. <ComboBox Height="28" Width="120" ItemsSource="{Binding DeviceKindNameList}" SelectedItem="{Binding DeviceKindName}" />
  43. </StackPanel>
  44. <StackPanel Orientation="Horizontal">
  45. <TextBlock Text="测试方案名称:" Style="{StaticResource NormalTextBlockStyle}" Margin="10,0,5,0"/>
  46. <TextBox Height="28" Width="120" Text="{Binding ScheduleName}" >
  47. <b:Interaction.Triggers>
  48. <b:EventTrigger EventName="LostFocus">
  49. <b:InvokeCommandAction Command="{Binding TxtLostFocusCommand}" CommandParameter="{Binding ElementName=TBSeriesDescription}"/>
  50. </b:EventTrigger>
  51. </b:Interaction.Triggers>
  52. </TextBox>
  53. </StackPanel>
  54. <Button Content="保存测试方案" Width="80" Margin="5,0" Command="{Binding SaveAllSchCommand}" Style="{StaticResource NormalButtonStyle}" />
  55. </StackPanel>
  56. <Border Grid.Row="0" BorderBrush="#CBCBCB" BorderThickness="0,1" />
  57. <Expander Grid.Row="1" IsExpanded="True">
  58. <Expander.Header>
  59. <Label Content="已有测试项" FontSize="10"/>
  60. </Expander.Header>
  61. <DataGrid Grid.Row="2" ColumnWidth="*" AutoGenerateColumns="False" HeadersVisibility="All" CanUserAddRows="False" SelectionUnit="FullRow" SelectionMode="Single" RowHeaderWidth="0"
  62. ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" RowHeaderStyle="{StaticResource RowHeaderStyle}" RowStyle="{StaticResource DataGridRowtyle}" AlternationCount="2"
  63. ItemsSource="{Binding SchProjectList}" IsReadOnly="True" Margin="5" Padding="0" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible" >
  64. <b:Interaction.Triggers>
  65. <b:EventTrigger EventName="SelectionChanged">
  66. <b:InvokeCommandAction Command="{Binding DgSelectChangeCommand}" CommandParameter="{Binding SchDtlId}"/>
  67. </b:EventTrigger>
  68. </b:Interaction.Triggers>
  69. <DataGrid.Columns >
  70. <DataGridTextColumn Header="测试项" Binding="{Binding ItemName}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  71. <DataGridTextColumn Header="测试项类型" Binding="{Binding ItemType}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  72. <DataGridTemplateColumn Header="操作" Width="240" CellStyle="{StaticResource MyDataGridCellStyle}">
  73. <DataGridTemplateColumn.CellTemplate>
  74. <DataTemplate>
  75. <StackPanel Orientation="Horizontal">
  76. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  77. Command="{Binding DataContext.UpCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding SchDtlId}" Cursor="Hand" Margin="0,0,10,0" >
  78. <StackPanel Orientation="Horizontal">
  79. <TextBlock Text="上移↑" VerticalAlignment="Center" Foreground="Blue"/>
  80. </StackPanel>
  81. </Button>
  82. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  83. Command="{Binding DataContext.DownCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding SchDtlId}" Cursor="Hand" Margin="0,0,10,0">
  84. <StackPanel Orientation="Horizontal">
  85. <TextBlock Text="下移↓" VerticalAlignment="Center" Foreground="Blue"/>
  86. </StackPanel>
  87. </Button>
  88. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  89. Command="{Binding DataContext.EditDetailCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding SchDtlId}" Cursor="Hand" Margin="0,0,10,0">
  90. <StackPanel Orientation="Horizontal">
  91. <TextBlock Text="编辑" VerticalAlignment="Center" Foreground="Blue"/>
  92. </StackPanel>
  93. </Button>
  94. </StackPanel>
  95. </DataTemplate>
  96. </DataGridTemplateColumn.CellTemplate>
  97. </DataGridTemplateColumn>
  98. </DataGrid.Columns>
  99. </DataGrid>
  100. </Expander>
  101. <Expander Grid.Row="2" IsExpanded="True" >
  102. <Expander.Header>
  103. <Label Content="新增测试项" FontSize="10"/>
  104. </Expander.Header>
  105. <Grid>
  106. <Grid.RowDefinitions>
  107. <RowDefinition Height="50"/>
  108. <RowDefinition/>
  109. <RowDefinition/>
  110. <RowDefinition/>
  111. <RowDefinition Height="50"/>
  112. </Grid.RowDefinitions>
  113. <StackPanel Grid.Row="0" Orientation="Horizontal">
  114. <Button HorizontalAlignment="Left" Content="选择已有测试项" Width="100" Margin="5,0" Command="{Binding OpenExistCommand}" CommandParameter="{Binding DeviceKindName}" Style="{StaticResource NormalButtonStyle}" />
  115. <StackPanel Orientation="Horizontal" >
  116. <TextBlock Text="测试项类型:" Style="{StaticResource NormalTextBlockStyle}" Margin="10,0,5,0"/>
  117. <ComboBox Height="28" Width="120" ItemsSource="{Binding TestKinds}" SelectedItem="{Binding SelectTest}" />
  118. </StackPanel>
  119. <StackPanel Orientation="Horizontal">
  120. <TextBlock Text="测试项名称:" Style="{StaticResource NormalTextBlockStyle}" Margin="10,0,5,0"/>
  121. <TextBox Height="28" Width="120" Text="{Binding TestName}"/>
  122. </StackPanel>
  123. </StackPanel>
  124. <Border Grid.Row="0" BorderBrush="#CBCBCB" BorderThickness="1" />
  125. <ScrollViewer Grid.Row="1">
  126. <Grid >
  127. <Grid.ColumnDefinitions>
  128. <ColumnDefinition Width="80"/>
  129. <ColumnDefinition/>
  130. <ColumnDefinition Width="1.3*"/>
  131. </Grid.ColumnDefinitions>
  132. <TextBlock Grid.Column="0" Text="前置项" Style="{StaticResource NormalTextBlockStyle}" TextAlignment="Center">
  133. </TextBlock>
  134. <Border Grid.Column="1" BorderBrush="#CBCBCB" BorderThickness="1,0" />
  135. <Grid Grid.Column="1">
  136. <Grid.RowDefinitions>
  137. <RowDefinition/>
  138. <RowDefinition/>
  139. <RowDefinition Height="2*"/>
  140. </Grid.RowDefinitions>
  141. <Grid Grid.Row="0">
  142. <StackPanel Orientation="Horizontal" >
  143. <TextBlock Text="测试项类型:" Style="{StaticResource textBlockStyle}"/>
  144. <ComboBox Height="28" Width="150" ItemsSource="{Binding BeforeJudgeKinds}" SelectedItem="{Binding BeforeSelectJudge}" />
  145. </StackPanel>
  146. </Grid>
  147. <Grid Grid.Row="1" >
  148. <StackPanel Orientation="Horizontal" >
  149. <TextBlock Text="明细判定逻辑:" Style="{StaticResource textBlockStyle}"/>
  150. <ComboBox Height="28" Width="150" ItemsSource="{Binding JudgeLogicKinds}" SelectedItem="{Binding SelectLogic}"/>
  151. </StackPanel>
  152. </Grid>
  153. <Grid Grid.Row="2">
  154. <DockPanel LastChildFill="True" >
  155. <TextBlock Text="前置项描述:" Style="{StaticResource textBlockStyle}" />
  156. <TextBox x:Name="txtBefore" TextWrapping="Wrap" Text="{Binding BeforeDetail }" AcceptsReturn="True" KeyDown="txtBefore_KeyDown"/>
  157. </DockPanel>
  158. </Grid>
  159. </Grid>
  160. <Grid Grid.Column="2" >
  161. <Grid.RowDefinitions>
  162. <RowDefinition Height="30"/>
  163. <RowDefinition/>
  164. </Grid.RowDefinitions>
  165. <DockPanel LastChildFill="False">
  166. <TextBlock Text="前置项明细:" Style="{StaticResource textBlockStyle}" />
  167. <Button Content="新增" Height="22" Width="60" Margin="5,0" Command="{Binding AddDetailCommand}" CommandParameter="Before" Style="{StaticResource NormalButtonStyle}" DockPanel.Dock="Right" />
  168. </DockPanel>
  169. <DataGrid Grid.Row="1" ColumnWidth="*" AutoGenerateColumns="False" HeadersVisibility="All" CanUserAddRows="False" SelectionUnit="FullRow" SelectionMode="Single" RowHeaderWidth="0" HorizontalScrollBarVisibility="Disabled"
  170. ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" x:Name="DeviceDataGrid" RowHeaderStyle="{StaticResource RowHeaderStyle}" RowStyle="{StaticResource DataGridRowtyle}" AlternationCount="2"
  171. ItemsSource="{Binding BeforeConList}" IsReadOnly="True" Padding="0" >
  172. <DataGrid.Columns >
  173. <DataGridTextColumn Header="序号" Width="40" Binding="{Binding Id}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  174. <DataGridTextColumn Header="PLC地址" Binding="{Binding PlcAddress}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  175. <DataGridTextColumn Header="PLC变量名" Binding="{Binding PlcItem}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  176. <DataGridTextColumn Header="判定值" Binding="{Binding PlcValue}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  177. <DataGridTemplateColumn Header="操作" Width="160" CellStyle="{StaticResource MyDataGridCellStyle}">
  178. <DataGridTemplateColumn.CellTemplate>
  179. <DataTemplate>
  180. <UniformGrid Columns="2">
  181. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  182. Command="{Binding DataContext.EditBeforeCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" Margin="0,0,10,0" >
  183. <StackPanel Orientation="Horizontal">
  184. <TextBlock Text="编辑" VerticalAlignment="Center" Foreground="Blue"/>
  185. </StackPanel>
  186. </Button>
  187. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  188. Command="{Binding DataContext.DeleteBeforeCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" >
  189. <StackPanel Orientation="Horizontal">
  190. <TextBlock Text="删除" VerticalAlignment="Center" Foreground="Blue"/>
  191. </StackPanel>
  192. </Button>
  193. </UniformGrid>
  194. </DataTemplate>
  195. </DataGridTemplateColumn.CellTemplate>
  196. </DataGridTemplateColumn>
  197. </DataGrid.Columns>
  198. </DataGrid>
  199. </Grid>
  200. </Grid>
  201. </ScrollViewer>
  202. <ScrollViewer Grid.Row="2">
  203. <Grid >
  204. <Grid.ColumnDefinitions>
  205. <ColumnDefinition Width="80"/>
  206. <ColumnDefinition/>
  207. <ColumnDefinition Width="1.3*"/>
  208. </Grid.ColumnDefinitions>
  209. <TextBlock Grid.Column="0" Text="输入项" Style="{StaticResource NormalTextBlockStyle}" TextAlignment="Center">
  210. </TextBlock>
  211. <Border Grid.Column="1" BorderBrush="#CBCBCB" BorderThickness="1,0" />
  212. <Grid Grid.Column="1">
  213. <Grid.RowDefinitions>
  214. <RowDefinition/>
  215. <RowDefinition/>
  216. <RowDefinition Height="2*"/>
  217. </Grid.RowDefinitions>
  218. <Grid Grid.Row="0">
  219. <StackPanel Orientation="Horizontal" >
  220. <TextBlock Text="测试项类型:" Style="{StaticResource textBlockStyle}"/>
  221. <ComboBox Height="28" Width="150" ItemsSource="{Binding InJudgeKinds}" SelectedItem="{Binding SelectInJudge}" />
  222. </StackPanel>
  223. </Grid>
  224. <Grid Grid.Row="1" >
  225. <StackPanel Orientation="Horizontal" >
  226. <TextBlock Text="明细判定逻辑:" Style="{StaticResource textBlockStyle}"/>
  227. <ComboBox Height="28" Width="150" ItemsSource="{Binding InJudgeLogicKinds}" SelectedItem="{Binding InSelectLogic}"/>
  228. </StackPanel>
  229. </Grid>
  230. <Grid Grid.Row="2">
  231. <DockPanel LastChildFill="True" >
  232. <TextBlock Text="输入项描述:" Style="{StaticResource textBlockStyle}" />
  233. <TextBox x:Name="txtIn" TextWrapping="Wrap" Text="{Binding InDetail,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" AcceptsReturn="True" KeyDown="txtIn_KeyDown"/>
  234. </DockPanel>
  235. </Grid>
  236. </Grid>
  237. <Grid Grid.Column="2" >
  238. <Grid.RowDefinitions>
  239. <RowDefinition Height="30"/>
  240. <RowDefinition/>
  241. </Grid.RowDefinitions>
  242. <DockPanel LastChildFill="False">
  243. <TextBlock Text="输入项明细:" Style="{StaticResource textBlockStyle}" />
  244. <Button Content="新增" Height="22" Width="60" Margin="5,0" Command="{Binding AddDetailCommand}" CommandParameter="In" Style="{StaticResource NormalButtonStyle}" DockPanel.Dock="Right" />
  245. </DockPanel>
  246. <DataGrid Grid.Row="1" ColumnWidth="*" AutoGenerateColumns="False" HeadersVisibility="All" CanUserAddRows="False" SelectionUnit="FullRow" SelectionMode="Single" RowHeaderWidth="0" HorizontalScrollBarVisibility="Disabled"
  247. ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" RowHeaderStyle="{StaticResource RowHeaderStyle}" RowStyle="{StaticResource DataGridRowtyle}" AlternationCount="2"
  248. ItemsSource="{Binding InConList}" IsReadOnly="True" Padding="0" >
  249. <DataGrid.Columns >
  250. <DataGridTextColumn Header="序号" Width="40" Binding="{Binding Id}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  251. <DataGridTextColumn Header="PLC地址" Binding="{Binding PlcAddress}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  252. <DataGridTextColumn Header="PLC变量名" Binding="{Binding PlcItem}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  253. <DataGridTextColumn Header="判定值" Binding="{Binding PlcValue}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  254. <DataGridTemplateColumn Header="操作" Width="160" CellStyle="{StaticResource MyDataGridCellStyle}">
  255. <DataGridTemplateColumn.CellTemplate>
  256. <DataTemplate>
  257. <UniformGrid Columns="2">
  258. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  259. Command="{Binding DataContext.EditInCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" Margin="0,0,10,0" >
  260. <StackPanel Orientation="Horizontal">
  261. <TextBlock Text="编辑" VerticalAlignment="Center" Foreground="Blue"/>
  262. </StackPanel>
  263. </Button>
  264. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  265. Command="{Binding DataContext.DeleteInCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" >
  266. <StackPanel Orientation="Horizontal">
  267. <TextBlock Text="删除" VerticalAlignment="Center" Foreground="Blue"/>
  268. </StackPanel>
  269. </Button>
  270. </UniformGrid>
  271. </DataTemplate>
  272. </DataGridTemplateColumn.CellTemplate>
  273. </DataGridTemplateColumn>
  274. </DataGrid.Columns>
  275. </DataGrid>
  276. </Grid>
  277. </Grid>
  278. </ScrollViewer>
  279. <Border Grid.Row="2" BorderBrush="#CBCBCB" BorderThickness="0,1,0,0" />
  280. <ScrollViewer Grid.Row="3">
  281. <Grid >
  282. <Grid.ColumnDefinitions>
  283. <ColumnDefinition Width="80"/>
  284. <ColumnDefinition/>
  285. <ColumnDefinition Width="1.3*"/>
  286. </Grid.ColumnDefinitions>
  287. <TextBlock Grid.Column="0" Text="结果项" Style="{StaticResource NormalTextBlockStyle}" TextAlignment="Center">
  288. </TextBlock>
  289. <Border Grid.Column="1" BorderBrush="#CBCBCB" BorderThickness="1,0" />
  290. <Grid Grid.Column="1">
  291. <Grid.RowDefinitions>
  292. <RowDefinition/>
  293. <RowDefinition/>
  294. <RowDefinition Height="2*"/>
  295. </Grid.RowDefinitions>
  296. <Grid Grid.Row="0">
  297. <StackPanel Orientation="Horizontal" >
  298. <TextBlock Text="测试项类型:" Style="{StaticResource textBlockStyle}"/>
  299. <ComboBox Height="28" Width="150" ItemsSource="{Binding OutJudgeKinds}" SelectedItem="{Binding SelectOutJudge}" />
  300. </StackPanel>
  301. </Grid>
  302. <Grid Grid.Row="1" >
  303. <StackPanel Orientation="Horizontal" >
  304. <TextBlock Text="明细判定逻辑:" Style="{StaticResource textBlockStyle}"/>
  305. <ComboBox Height="28" Width="150" ItemsSource="{Binding OutJudgeLogicKinds}" SelectedItem="{Binding OutSelectLogic}"/>
  306. </StackPanel>
  307. </Grid>
  308. <Grid Grid.Row="2">
  309. <DockPanel LastChildFill="True" >
  310. <TextBlock Text="结果项描述:" Style="{StaticResource textBlockStyle}" />
  311. <TextBox x:Name="txtOut" TextWrapping="Wrap" Text="{Binding OutDetail,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" AcceptsReturn="True" KeyDown="txtOut_KeyDown"/>
  312. </DockPanel>
  313. </Grid>
  314. </Grid>
  315. <Grid Grid.Column="2" >
  316. <Grid.RowDefinitions>
  317. <RowDefinition Height="30"/>
  318. <RowDefinition/>
  319. </Grid.RowDefinitions>
  320. <DockPanel LastChildFill="False">
  321. <TextBlock Text="结果项明细:" Style="{StaticResource textBlockStyle}" />
  322. <Button Content="新增" Height="22" Width="60" Margin="5,0" Command="{Binding AddDetailCommand}" CommandParameter="Out" Style="{StaticResource NormalButtonStyle}" DockPanel.Dock="Right" />
  323. </DockPanel>
  324. <DataGrid Grid.Row="1" ColumnWidth="*" AutoGenerateColumns="False" HeadersVisibility="All" CanUserAddRows="False" SelectionUnit="FullRow" SelectionMode="Single" RowHeaderWidth="0" HorizontalScrollBarVisibility="Disabled"
  325. ColumnHeaderStyle="{StaticResource ColumnHeaderStyle}" RowHeaderStyle="{StaticResource RowHeaderStyle}" RowStyle="{StaticResource DataGridRowtyle}" AlternationCount="2"
  326. ItemsSource="{Binding OutConList}" IsReadOnly="True" Padding="0" >
  327. <DataGrid.Columns >
  328. <DataGridTextColumn Header="序号" Width="40" Binding="{Binding Id}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  329. <DataGridTextColumn Header="PLC地址" Binding="{Binding PlcAddress}" CellStyle="{StaticResource MyDataGridCellStyle}" />
  330. <DataGridTextColumn Header="PLC变量名" Binding="{Binding PlcItem}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  331. <DataGridTextColumn Header="判定值" Binding="{Binding PlcValue}" CellStyle="{StaticResource MyDataGridCellStyle}"/>
  332. <DataGridTemplateColumn Header="操作" Width="160" CellStyle="{StaticResource MyDataGridCellStyle}">
  333. <DataGridTemplateColumn.CellTemplate>
  334. <DataTemplate>
  335. <UniformGrid Columns="2">
  336. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  337. Command="{Binding DataContext.EditOutCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" Margin="0,0,10,0" >
  338. <StackPanel Orientation="Horizontal">
  339. <TextBlock Text="编辑" VerticalAlignment="Center" Foreground="Blue"/>
  340. </StackPanel>
  341. </Button>
  342. <Button Width="auto" Background="Transparent" HorizontalContentAlignment ="Left" Foreground="Black" Height="25" BorderThickness="0"
  343. Command="{Binding DataContext.DeleteOutCommand, RelativeSource={RelativeSource Mode=FindAncestor,AncestorType=DataGrid}}" CommandParameter="{Binding Id}" Cursor="Hand" >
  344. <StackPanel Orientation="Horizontal">
  345. <TextBlock Text="删除" VerticalAlignment="Center" Foreground="Blue"/>
  346. </StackPanel>
  347. </Button>
  348. </UniformGrid>
  349. </DataTemplate>
  350. </DataGridTemplateColumn.CellTemplate>
  351. </DataGridTemplateColumn>
  352. </DataGrid.Columns>
  353. </DataGrid>
  354. </Grid>
  355. </Grid>
  356. </ScrollViewer>
  357. <Border Grid.Row="3" BorderBrush="#CBCBCB" BorderThickness="0,1" />
  358. <Button Grid.Row="4" HorizontalAlignment="Right" Content="保存测试项" Width="80" Margin="5,0" Command="{Binding SureCommand}" Style="{StaticResource NormalButtonStyle}" />
  359. </Grid>
  360. </Expander>
  361. </Grid>
  362. </UserControl>