HomeView.xaml 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596
  1. <UserControl
  2. x:Class="TeamAAS_VP.Views.HomeView"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:b="http://schemas.microsoft.com/xaml/behaviors"
  6. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  7. xmlns:lex="http://wpflocalizeextension.codeplex.com"
  8. xmlns:local="clr-namespace:TeamAAS_VP.Views.Home"
  9. xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
  10. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  11. xmlns:oxy="http://oxyplot.org/wpf"
  12. xmlns:prism="http://prismlibrary.com/"
  13. xmlns:vm="clr-namespace:TeamAAS_VP.ViewModels"
  14. d:Background="White"
  15. d:DataContext="{d:DesignInstance Type=vm:HomeViewModel}"
  16. d:Height="600"
  17. d:Width="1024"
  18. lex:LocalizeDictionary.DesignCulture="zh-CN"
  19. lex:ResxLocalizationProvider.DefaultAssembly="TeamAAS-VP"
  20. lex:ResxLocalizationProvider.DefaultDictionary="Lang"
  21. prism:ViewModelLocator.AutoWireViewModel="True"
  22. Background="Transparent"
  23. FontFamily="{DynamicResource DefaultFont}"
  24. mc:Ignorable="d">
  25. <b:Interaction.Triggers>
  26. <b:EventTrigger EventName="Loaded">
  27. <b:InvokeCommandAction Command="{Binding LoadedCommand}" />
  28. </b:EventTrigger>
  29. </b:Interaction.Triggers>
  30. <Grid>
  31. <Grid.ColumnDefinitions>
  32. <ColumnDefinition Width="60*" />
  33. <ColumnDefinition Width="40*" />
  34. </Grid.ColumnDefinitions>
  35. <Grid Grid.Row="0">
  36. <Grid.RowDefinitions>
  37. <RowDefinition Height="*" />
  38. <!--<RowDefinition Height="*" />-->
  39. </Grid.RowDefinitions>
  40. <!-- 图像 -->
  41. <local:ShowVisionRender Grid.Row="0" Grid.Column="0" />
  42. <!-- 曲线图 -->
  43. <!--<oxy:PlotView Grid.Row="1"
  44. Grid.Column="0"
  45. Model="{Binding LockCurvePlotModel}"
  46. Background="Transparent"
  47. Margin="10" />-->
  48. </Grid>
  49. <Grid
  50. x:Name="zzz"
  51. Grid.Row="1"
  52. Grid.Column="1">
  53. <Grid.RowDefinitions>
  54. <RowDefinition Height="60*" />
  55. <RowDefinition Height="40*" />
  56. </Grid.RowDefinitions>
  57. <Grid>
  58. <Grid.RowDefinitions>
  59. <RowDefinition Height="*" />
  60. <RowDefinition Height="auto" />
  61. <RowDefinition Height="auto" />
  62. </Grid.RowDefinitions>
  63. <Grid>
  64. <Grid.ColumnDefinitions>
  65. <ColumnDefinition Width="80*" />
  66. <ColumnDefinition Width="auto" />
  67. </Grid.ColumnDefinitions>
  68. <!-- 锁付结果展示表格(插入位置) -->
  69. <materialDesign:Card
  70. Grid.Row="0"
  71. Margin="0,4"
  72. BorderBrush="LightGray"
  73. BorderThickness="1"
  74. UniformCornerRadius="10">
  75. <DockPanel Margin="8" LastChildFill="True">
  76. <Border
  77. Height="30"
  78. Margin="0,0,0,8"
  79. BorderThickness="1"
  80. CornerRadius="6"
  81. DockPanel.Dock="Top">
  82. <Border.Style>
  83. <Style TargetType="Border">
  84. <Setter Property="Background" Value="#9E9E9E" />
  85. <Setter Property="BorderBrush" Value="#9E9E9E" />
  86. <Style.Triggers>
  87. <DataTrigger Binding="{Binding management.FinalResultStatus}" Value="OK">
  88. <Setter Property="Background" Value="#4CAF50" />
  89. <Setter Property="BorderBrush" Value="#4CAF50" />
  90. </DataTrigger>
  91. <DataTrigger Binding="{Binding management.FinalResultStatus}" Value="NG">
  92. <Setter Property="Background" Value="#F44336" />
  93. <Setter Property="BorderBrush" Value="#F44336" />
  94. </DataTrigger>
  95. <DataTrigger Binding="{Binding management.FinalResultStatus}" Value="检测中">
  96. <Setter Property="Background" Value="#9E9E9E" />
  97. <Setter Property="BorderBrush" Value="#9E9E9E" />
  98. </DataTrigger>
  99. </Style.Triggers>
  100. </Style>
  101. </Border.Style>
  102. <TextBlock
  103. HorizontalAlignment="Center"
  104. VerticalAlignment="Center"
  105. FontSize="20"
  106. FontWeight="Bold"
  107. Foreground="White"
  108. Text="{Binding management.FinalResultText, FallbackValue=检测中}"
  109. TextAlignment="Center" />
  110. </Border>
  111. <TextBlock
  112. DockPanel.Dock="Top"
  113. FontSize="{DynamicResource Font.Size.Body3}"
  114. FontWeight="Bold"
  115. Text="{lex:Loc 拍照结果}" />
  116. <DataGrid
  117. x:Name="lockResultGrid"
  118. MinHeight="120"
  119. Margin="0,8,0,0"
  120. HorizontalAlignment="Stretch"
  121. VerticalAlignment="Stretch"
  122. AutoGenerateColumns="False"
  123. CanUserAddRows="False"
  124. CanUserDeleteRows="False"
  125. GridLinesVisibility="None"
  126. HeadersVisibility="Column"
  127. IsReadOnly="True"
  128. ItemsSource="{Binding LockResults}"
  129. RowHeaderWidth="0">
  130. <DataGrid.Columns>
  131. <DataGridTextColumn
  132. Width="auto"
  133. Binding="{Binding PhotoName}"
  134. Header="#"
  135. IsReadOnly="True" />
  136. <DataGridTextColumn
  137. Width="auto"
  138. Binding="{Binding PhotoCode}"
  139. Header="{lex:Loc 产品编号}"
  140. IsReadOnly="True" />
  141. <DataGridTextColumn
  142. Width="auto"
  143. Binding="{Binding Timestamp, StringFormat={}{0:G}}"
  144. Header="{lex:Loc 时间}"
  145. IsReadOnly="True" />
  146. <DataGridTextColumn
  147. Width="auto"
  148. Binding="{Binding ResultData}"
  149. Header="{lex:Loc 测量数据}"
  150. IsReadOnly="True" />
  151. <!--<DataGridTextColumn Header="程序号"
  152. Binding="{Binding ScrewdriverProgramNumber}"
  153. Width="auto"
  154. IsReadOnly="True" />
  155. <DataGridTextColumn Header="锁付圈数"
  156. Binding="{Binding LockTurns}"
  157. Width="auto"
  158. IsReadOnly="True" />
  159. <DataGridTextColumn Header="锁付扭矩"
  160. Binding="{Binding LockTorque}"
  161. Width="auto"
  162. IsReadOnly="True" />-->
  163. <DataGridTemplateColumn
  164. Width="auto"
  165. Header="{lex:Loc 拍照结果}"
  166. IsReadOnly="True">
  167. <DataGridTemplateColumn.CellTemplate>
  168. <DataTemplate>
  169. <Border
  170. x:Name="bd"
  171. Padding="4"
  172. HorizontalAlignment="Center"
  173. VerticalAlignment="Center"
  174. Background="Transparent"
  175. CornerRadius="4">
  176. <TextBlock
  177. x:Name="txt"
  178. HorizontalAlignment="Center"
  179. VerticalAlignment="Center"
  180. FontWeight="Bold"
  181. Foreground="White" />
  182. </Border>
  183. <DataTemplate.Triggers>
  184. <DataTrigger Binding="{Binding PhotoPassed}" Value="OK">
  185. <Setter TargetName="bd" Property="Background" Value="Green" />
  186. <Setter TargetName="txt" Property="Text" Value="OK" />
  187. </DataTrigger>
  188. <DataTrigger Binding="{Binding PhotoPassed}" Value="NG">
  189. <Setter TargetName="bd" Property="Background" Value="Red" />
  190. <Setter TargetName="txt" Property="Text" Value="NG" />
  191. </DataTrigger>
  192. </DataTemplate.Triggers>
  193. </DataTemplate>
  194. </DataGridTemplateColumn.CellTemplate>
  195. </DataGridTemplateColumn>
  196. <DataGridTextColumn
  197. Width="auto"
  198. Binding="{Binding Detail}"
  199. Header="{lex:Loc 详情}"
  200. IsReadOnly="True" />
  201. </DataGrid.Columns>
  202. </DataGrid>
  203. </DockPanel>
  204. </materialDesign:Card>
  205. <StackPanel
  206. Grid.Column="1"
  207. Margin="5"
  208. HorizontalAlignment="Center"
  209. Orientation="Vertical"
  210. Visibility="{Binding DataContext.IsShowLabel, ElementName=zzz, Converter={StaticResource BooleanToVisibilityConverter}}" />
  211. </Grid>
  212. <Grid Grid.Row="1">
  213. <Grid.ColumnDefinitions>
  214. <ColumnDefinition Width="*" />
  215. <ColumnDefinition Width="*" />
  216. </Grid.ColumnDefinitions>
  217. <!-- 加载产品 -->
  218. <materialDesign:Card
  219. Grid.Row="0"
  220. Grid.Column="0"
  221. BorderBrush="LightGray"
  222. BorderThickness="1"
  223. UniformCornerRadius="10">
  224. <!-- 产品 -->
  225. <StackPanel
  226. Margin="2"
  227. HorizontalAlignment="Center"
  228. VerticalAlignment="Center"
  229. Orientation="Vertical">
  230. <StackPanel
  231. HorizontalAlignment="Left"
  232. VerticalAlignment="Center"
  233. Orientation="Horizontal">
  234. <TextBlock
  235. VerticalAlignment="Center"
  236. FontSize="14"
  237. Text="{lex:Loc 产品列表,
  238. Converter={StaticResource StringFormatConverter},
  239. ConverterParameter='{}{0}: '}" />
  240. <ComboBox
  241. x:Name="selectProduct"
  242. Width="100"
  243. Margin="20,0"
  244. materialDesign:HintAssist.Hint="{lex:Loc 选择产品}"
  245. FontSize="14"
  246. ItemsSource="{Binding ProductList, Mode=TwoWay}"
  247. SelectedItem="{Binding SelectProduct, Mode=TwoWay}">
  248. <ComboBox.ItemTemplate>
  249. <DataTemplate>
  250. <StackPanel Orientation="Vertical">
  251. <StackPanel Orientation="Horizontal">
  252. <materialDesign:PackIcon Kind="CubeOutline" />
  253. <TextBlock Text="{Binding Name}" />
  254. </StackPanel>
  255. <TextBlock
  256. MinHeight="0"
  257. MaxWidth="300"
  258. FontSize="{DynamicResource Font.Size.Captions4}"
  259. Foreground="Gray"
  260. Text="{Binding Description}"
  261. TextTrimming="CharacterEllipsis"
  262. TextWrapping="Wrap" />
  263. </StackPanel>
  264. </DataTemplate>
  265. </ComboBox.ItemTemplate>
  266. </ComboBox>
  267. </StackPanel>
  268. <Button
  269. Margin="0,10"
  270. materialDesign:ButtonAssist.CornerRadius="10"
  271. Command="{Binding LoadProductCommand}"
  272. CommandParameter="{Binding ElementName=selectProduct, Path=SelectedItem}"
  273. Content="{lex:Loc 加载}"
  274. Style="{StaticResource MaterialDesignRaisedButton}" />
  275. <StackPanel
  276. HorizontalAlignment="Left"
  277. VerticalAlignment="Center"
  278. Orientation="Horizontal">
  279. <TextBlock
  280. VerticalAlignment="Center"
  281. FontSize="14"
  282. Foreground="Green"
  283. Text="{lex:Loc 当前产品,
  284. Converter={StaticResource StringFormatConverter},
  285. ConverterParameter='{}{0}: '}" />
  286. <TextBlock
  287. Margin="10,0"
  288. VerticalAlignment="Center"
  289. FontSize="14"
  290. FontWeight="Bold">
  291. <TextBlock.Text>
  292. <MultiBinding StringFormat="{}{0}. {1}">
  293. <Binding Path="CurrentProduct.NumberCode" />
  294. <Binding Path="CurrentProduct.Name" />
  295. </MultiBinding>
  296. </TextBlock.Text>
  297. </TextBlock>
  298. </StackPanel>
  299. </StackPanel>
  300. </materialDesign:Card>
  301. <!-- 生产数量 -->
  302. <materialDesign:Card
  303. Grid.Row="0"
  304. Grid.Column="1"
  305. BorderBrush="LightGray"
  306. BorderThickness="1"
  307. UniformCornerRadius="10">
  308. <Grid
  309. Grid.Row="1"
  310. HorizontalAlignment="Center"
  311. VerticalAlignment="Center">
  312. <Grid.RowDefinitions>
  313. <RowDefinition Height="auto" />
  314. <RowDefinition Height="auto" />
  315. <RowDefinition Height="auto" />
  316. </Grid.RowDefinitions>
  317. <Grid.ColumnDefinitions>
  318. <ColumnDefinition Width="auto" />
  319. <ColumnDefinition Width="auto" />
  320. </Grid.ColumnDefinitions>
  321. <Grid.Resources>
  322. <Style TargetType="TextBlock">
  323. <Setter Property="FontSize" Value="14" />
  324. <Setter Property="Margin" Value="5" />
  325. <Setter Property="MinWidth" Value="50" />
  326. <Setter Property="HorizontalAlignment" Value="Center" />
  327. <Setter Property="VerticalAlignment" Value="Center" />
  328. <Setter Property="TextAlignment" Value="Center" />
  329. <Setter Property="TextTrimming" Value="CharacterEllipsis" />
  330. </Style>
  331. </Grid.Resources>
  332. <TextBlock
  333. HorizontalAlignment="Right"
  334. Text="{lex:Loc 当前产品总产量,
  335. Converter={StaticResource StringFormatConverter},
  336. ConverterParameter='{}{0}: '}"
  337. TextAlignment="Right" />
  338. <Border
  339. Grid.Row="0"
  340. Grid.Column="1"
  341. VerticalAlignment="Bottom"
  342. BorderBrush="Gray"
  343. BorderThickness="1" />
  344. <TextBlock
  345. Grid.Row="0"
  346. Grid.Column="1"
  347. Text="{Binding management.TotalQuantity}" />
  348. <TextBlock
  349. Grid.Row="1"
  350. Grid.Column="0"
  351. HorizontalAlignment="Right"
  352. Text="{lex:Loc 今日产量,
  353. Converter={StaticResource StringFormatConverter},
  354. ConverterParameter='{}{0}: '}"
  355. TextAlignment="Right" />
  356. <Border
  357. Grid.Row="1"
  358. Grid.Column="1"
  359. VerticalAlignment="Bottom"
  360. BorderBrush="Gray"
  361. BorderThickness="1" />
  362. <TextBlock
  363. Grid.Row="1"
  364. Grid.Column="1"
  365. Text="{Binding management.TotalQuantityToday}" />
  366. <TextBlock
  367. Grid.Row="2"
  368. Grid.Column="0"
  369. HorizontalAlignment="Right"
  370. Text="UPH:"
  371. TextAlignment="Right" />
  372. <Border
  373. Grid.Row="2"
  374. Grid.Column="1"
  375. VerticalAlignment="Bottom"
  376. BorderBrush="Gray"
  377. BorderThickness="1" />
  378. <TextBlock
  379. Grid.Row="2"
  380. Grid.Column="1"
  381. Text="{Binding management.CurrentUPH}" />
  382. </Grid>
  383. </materialDesign:Card>
  384. <!-- OK/NG -->
  385. <!--
  386. <materialDesign:Card Grid.Row="0"
  387. Grid.Column="2"
  388. UniformCornerRadius="10"
  389. BorderBrush="LightGray"
  390. BorderThickness="1">
  391. <Grid Grid.Row="1"
  392. HorizontalAlignment="Center"
  393. VerticalAlignment="Center">
  394. <Grid.RowDefinitions>
  395. <RowDefinition Height="auto" />
  396. <RowDefinition Height="auto" />
  397. <RowDefinition Height="auto" />
  398. </Grid.RowDefinitions>
  399. <Grid.ColumnDefinitions>
  400. <ColumnDefinition Width="auto" />
  401. <ColumnDefinition Width="auto" />
  402. </Grid.ColumnDefinitions>
  403. <Grid.Resources>
  404. <Style TargetType="TextBlock">
  405. <Setter Property="FontSize"
  406. Value="14" />
  407. <Setter Property="Margin"
  408. Value="5" />
  409. <Setter Property="MinWidth"
  410. Value="50" />
  411. <Setter Property="HorizontalAlignment"
  412. Value="Center" />
  413. <Setter Property="VerticalAlignment"
  414. Value="Center" />
  415. <Setter Property="TextAlignment"
  416. Value="Center" />
  417. <Setter Property="TextTrimming"
  418. Value="CharacterEllipsis" />
  419. </Style>
  420. </Grid.Resources>
  421. -->
  422. <!--<TextBlock Text="{lex:Loc 抛料数,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  423. HorizontalAlignment="Right"
  424. TextAlignment="Right" />
  425. <Border Grid.Row="0"
  426. Grid.Column="1"
  427. VerticalAlignment="Bottom"
  428. BorderBrush="Gray"
  429. BorderThickness="1" />
  430. <TextBlock Grid.Row="0"
  431. Grid.Column="1"
  432. Text="" />
  433. <TextBlock Grid.Row="1"
  434. Grid.Column="0"
  435. Text="{lex:Loc NG数量,Converter={StaticResource StringFormatConverter},ConverterParameter='{}{0}: '}"
  436. HorizontalAlignment="Right"
  437. TextAlignment="Right" />
  438. <Border Grid.Row="1"
  439. Grid.Column="1"
  440. VerticalAlignment="Bottom"
  441. BorderBrush="Gray"
  442. BorderThickness="1" />
  443. <TextBlock Grid.Row="1"
  444. Grid.Column="1"
  445. Text="{Binding management.NgNumber}" />
  446. <TextBlock Grid.Row="2"
  447. Grid.Column="0"
  448. Text="{lex:Loc 良率}"
  449. HorizontalAlignment="Right"
  450. TextAlignment="Right" />
  451. <Border Grid.Row="2"
  452. Grid.Column="1"
  453. VerticalAlignment="Bottom"
  454. BorderBrush="Gray"
  455. BorderThickness="1" />
  456. <TextBlock Grid.Row="2"
  457. Grid.Column="1"
  458. Text="{Binding management.Yield,StringFormat={}{0:F2}%}" />-->
  459. <!--
  460. </Grid>
  461. </materialDesign:Card>-->
  462. </Grid>
  463. <StackPanel
  464. Grid.Row="2"
  465. Margin="10,3"
  466. VerticalAlignment="Bottom"
  467. Orientation="Horizontal">
  468. <TextBlock
  469. VerticalAlignment="Center"
  470. FontSize="{DynamicResource Font.Size.Body2}"
  471. FontWeight="Bold"
  472. Text="CT: " />
  473. <TextBlock
  474. Margin="10,0,50,0"
  475. VerticalAlignment="Center"
  476. FontSize="{DynamicResource Font.Size.Body3}"
  477. Text="{Binding management.CTtime, StringFormat={}{0:F2} s}" />
  478. <TextBlock
  479. VerticalAlignment="Center"
  480. FontSize="{DynamicResource Font.Size.Body2}"
  481. FontWeight="Bold"
  482. Text="CT2: " />
  483. <TextBlock
  484. Margin="10,0"
  485. VerticalAlignment="Center"
  486. FontSize="{DynamicResource Font.Size.Body3}"
  487. Text="{Binding management.CTtime2, StringFormat={}{0:F2} s}" />
  488. </StackPanel>
  489. <!--<CheckBox Grid.Row="2"
  490. VerticalAlignment="Bottom"
  491. Margin=" 120,3"
  492. HorizontalAlignment="Right"
  493. Content="虚拟SN"
  494. IsEnabled="{Binding IsRunning, Converter={StaticResource InvertBooleanConverter}}"
  495. IsChecked="{Binding IsNoCode, Mode=TwoWay, Converter={StaticResource InvertBooleanConverter}}" />
  496. <CheckBox Grid.Row="2"
  497. VerticalAlignment="Bottom"
  498. Margin="0,0,180,3"
  499. HorizontalAlignment="Right"
  500. Content="检测结果为1"
  501. IsEnabled="{Binding IsRunning, Converter={StaticResource InvertBooleanConverter}}"
  502. IsChecked="{Binding IsResultTrue, Mode=TwoWay, Converter={StaticResource InvertBooleanConverter}}" Width="98" />-->
  503. <Button
  504. Grid.Row="2"
  505. Margin="10,3"
  506. HorizontalAlignment="Right"
  507. VerticalAlignment="Bottom"
  508. materialDesign:ButtonAssist.CornerRadius="10"
  509. Command="{Binding ResetCounterCommand}"
  510. Content="{lex:Loc 计数清零}"
  511. IsEnabled="{Binding IsAllowEdit}"
  512. Style="{StaticResource MaterialDesignRaisedButton}" />
  513. </Grid>
  514. <Border
  515. Grid.Row="1"
  516. BorderBrush="#787878"
  517. BorderThickness="1"
  518. CornerRadius="20">
  519. <DockPanel Margin="10" LastChildFill="True">
  520. <TextBlock
  521. DockPanel.Dock="Top"
  522. FontSize="{DynamicResource Font.Size.Body3}"
  523. FontWeight="Bold"
  524. Text="{lex:Loc 运行信息,
  525. Converter={StaticResource StringFormatConverter},
  526. ConverterParameter='{}{0}: '}" />
  527. <ListView
  528. x:Name="messagelist"
  529. Background="Transparent"
  530. BorderThickness="0"
  531. ItemsSource="{Binding MessageQueue}"
  532. ScrollViewer.CanContentScroll="False"
  533. ScrollViewer.HorizontalScrollBarVisibility="Disabled"
  534. ScrollViewer.VerticalScrollBarVisibility="Auto">
  535. <ListView.Resources>
  536. <Style TargetType="{x:Type GridViewHeaderRowPresenter}">
  537. <Setter Property="FrameworkElement.Visibility" Value="Collapsed" />
  538. </Style>
  539. </ListView.Resources>
  540. <ListView.ItemContainerStyle>
  541. <Style TargetType="ListViewItem">
  542. <Setter Property="HorizontalContentAlignment" Value="Left" />
  543. <Setter Property="VerticalContentAlignment" Value="Top" />
  544. </Style>
  545. </ListView.ItemContainerStyle>
  546. <ListView.ItemTemplate>
  547. <DataTemplate>
  548. <Border HorizontalAlignment="Left" BorderThickness="0">
  549. <Label
  550. Width="auto"
  551. Margin="0"
  552. Padding="0"
  553. HorizontalAlignment="Left"
  554. VerticalAlignment="Center"
  555. Background="Transparent"
  556. BorderThickness="0"
  557. FontSize="10">
  558. <TextBlock
  559. FontSize="{DynamicResource Font.Size.Captions3}"
  560. Foreground="{Binding FontColol}"
  561. TextAlignment="Left"
  562. TextWrapping="Wrap">
  563. <TextBlock.Text>
  564. <MultiBinding StringFormat="{}[{0:M/d HH:mm:ss}]:{1}">
  565. <Binding Path="DT" />
  566. <Binding Path="Message" />
  567. </MultiBinding>
  568. </TextBlock.Text>
  569. </TextBlock>
  570. <Label.ContextMenu>
  571. <ContextMenu>
  572. <MenuItem
  573. Command="{Binding DataContext.CopyCommand, RelativeSource={RelativeSource Mode=FindAncestor, AncestorType=UserControl}}"
  574. CommandParameter="{Binding Message}"
  575. Header="Copy"
  576. Icon="{materialDesign:PackIcon Kind=ContentCopy}" />
  577. </ContextMenu>
  578. </Label.ContextMenu>
  579. </Label>
  580. </Border>
  581. </DataTemplate>
  582. </ListView.ItemTemplate>
  583. </ListView>
  584. </DockPanel>
  585. </Border>
  586. </Grid>
  587. </Grid>
  588. </UserControl>