UserResultPage.axaml 7.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. <UserControl xmlns="https://github.com/avaloniaui"
  2. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  3. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  4. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  5. mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
  6. x:Class="EntranseTesting.UserResultPage"
  7. x:DataType="vm:MainWindowViewModel"
  8. xmlns:vm="using:EntranseTesting.ViewModels">
  9. <Grid Margin="20 10" RowDefinitions="Auto, Auto, *">
  10. <WrapPanel HorizontalAlignment="Left" Grid.Row="0" Margin="0 5">
  11. <Button Content="К общим результатам" Margin="0 5 10 5"
  12. Command="{Binding ClickToAllResult}"/>
  13. <TextBlock Text="{Binding UserResult.Session.Date, StringFormat='Сеанс от {0:dd MMMM yyyy HH\\:mm\\:ss}'}"
  14. Margin="0 10" Classes="Header2"/>
  15. </WrapPanel>
  16. <StackPanel Orientation="Vertical" Spacing="5"
  17. Grid.Row="1">
  18. <!-- Общая информация о пользователе -->
  19. <WrapPanel Orientation="Horizontal">
  20. <TextBlock Text="{Binding UserResult.Session.UserGroup, StringFormat='Группа: {0}'}"/>
  21. <TextBlock Text="{Binding UserResult.Session.UserName, StringFormat='Пользователь: {0}'}" Margin="10 0"/>
  22. </WrapPanel>
  23. <TextBlock Text="{Binding UserResult.Session.Time, StringFormat='Время: {0:hh\\:mm\\:ss}'}"/>
  24. <TextBlock Text="{Binding UserResult.Session.CountHintLine, StringFormat='Подсказки: {0}'}"/>
  25. <WrapPanel Orientation="Horizontal">
  26. <TextBlock Text="{Binding UserResult.Session.Raiting, StringFormat='Оценка: {0}'}"/>
  27. <TextBlock Text="{Binding UserResult.Session.CountCorrectly, StringFormat='({0}'}"
  28. Margin="10 0 0 0"/>
  29. <TextBlock Text="{Binding UserResult.Session.ProcentCorrectly, StringFormat=' или {0}%)'}"/>
  30. </WrapPanel>
  31. <ContentControl Content="{Binding UserResult.Session.AnswerRaiting}"/>
  32. </StackPanel>
  33. <ScrollViewer HorizontalScrollBarVisibility="Disabled"
  34. VerticalScrollBarVisibility="Auto" Grid.Row="2">
  35. <StackPanel Orientation="Vertical">
  36. <!-- Цветообозначения -->
  37. <Border BorderBrush="#696BFF" BorderThickness="2"
  38. Padding="10 5" CornerRadius="5"
  39. Margin="0 10">
  40. <WrapPanel Orientation="Horizontal" HorizontalAlignment="Center">
  41. <TextBlock Margin="2">
  42. <TextBlock.Inlines>
  43. <Run Text="&#x09;&#x09;" Background="LightGreen"/>
  44. <Run Text=" Правильно "/>
  45. </TextBlock.Inlines>
  46. </TextBlock>
  47. <TextBlock Margin="2">
  48. <TextBlock.Inlines>
  49. <Run Text="&#x09;&#x09;" Background="Yellow"/>
  50. <Run Text=" Частично правильно "/>
  51. </TextBlock.Inlines>
  52. </TextBlock>
  53. <TextBlock Margin="2">
  54. <TextBlock.Inlines>
  55. <Run Text="&#x09;&#x09;" Background="LightGray"/>
  56. <Run Text=" Правильно, но не выбрано"/>
  57. </TextBlock.Inlines>
  58. </TextBlock>
  59. <TextBlock Margin="2">
  60. <TextBlock.Inlines>
  61. <Run Text="&#x09;&#x09;" Background="LightCoral"/>
  62. <Run Text=" Не правильно"/>
  63. </TextBlock.Inlines>
  64. </TextBlock>
  65. <TextBlock Margin="2">
  66. <TextBlock.Inlines>
  67. <Run Text="&#x09;&#x09;" Background="LightSalmon"/>
  68. <Run Text=" Не правильно, но выбрано "/>
  69. </TextBlock.Inlines>
  70. </TextBlock>
  71. </WrapPanel>
  72. </Border>
  73. <!-- Поиск, сортировка -->
  74. <WrapPanel Orientation="Horizontal">
  75. <StackPanel Orientation="Vertical" Margin="0 0 15 0"
  76. Spacing="10">
  77. <TextBlock Text="Поиск по вопросу"/>
  78. <TextBox Text="{Binding UserResult.SearchLine}" Width="250"/>
  79. </StackPanel>
  80. <StackPanel Orientation="Vertical" >
  81. <CheckBox IsThreeState="True" IsChecked="{Binding UserResult.CorrectlyVisible}"
  82. Margin="5 0"
  83. ToolTip.Tip="Параметр: Состояние вопроса [Решен/Не решен]">
  84. <CheckBox.Styles>
  85. <Style Selector="CheckBox:checked">
  86. <Setter Property="Content" Value="Вопросы с правильным ответом"/>
  87. </Style>
  88. <Style Selector="CheckBox:unchecked">
  89. <Setter Property="Content" Value="Вопрос с не правильным ответом"/>
  90. </Style>
  91. <Style Selector="CheckBox">
  92. <Setter Property="Content" Value="Все вопросы"/>
  93. </Style>
  94. </CheckBox.Styles>
  95. </CheckBox>
  96. <CheckBox IsThreeState="True" IsChecked="{Binding UserResult.ResponseVisible}"
  97. Margin="5 0"
  98. ToolTip.Tip="Параметр: Состояние вопроса [Решен/Пропущен]">
  99. <CheckBox.Styles>
  100. <Style Selector="CheckBox:checked">
  101. <Setter Property="Content" Value="Вопросы с ответом"/>
  102. </Style>
  103. <Style Selector="CheckBox:unchecked">
  104. <Setter Property="Content" Value="Пропущенные вопросы"/>
  105. </Style>
  106. <Style Selector="CheckBox">
  107. <Setter Property="Content" Value="Все вопросы"/>
  108. </Style>
  109. </CheckBox.Styles>
  110. </CheckBox>
  111. <CheckBox IsThreeState="True" IsChecked="{Binding UserResult.HintVisible}"
  112. Margin="5 0"
  113. ToolTip.Tip="Параметр: Состояние подсказки [Использована/Не использована]">
  114. <CheckBox.Styles>
  115. <Style Selector="CheckBox:checked">
  116. <Setter Property="Content" Value="Вопросы с применением подсказок"/>
  117. </Style>
  118. <Style Selector="CheckBox:unchecked">
  119. <Setter Property="Content" Value="Вопросы без применения подсказок"/>
  120. </Style>
  121. <Style Selector="CheckBox">
  122. <Setter Property="Content" Value="Все вопросы"/>
  123. </Style>
  124. </CheckBox.Styles>
  125. </CheckBox>
  126. </StackPanel>
  127. </WrapPanel>
  128. <!-- Информация о заданиях -->
  129. <ItemsRepeater ItemsSource="{Binding UserResult.ResponseList}">
  130. <ItemsRepeater.ItemTemplate>
  131. <DataTemplate>
  132. <ContentControl Content="{Binding Result}"/>
  133. </DataTemplate>
  134. </ItemsRepeater.ItemTemplate>
  135. </ItemsRepeater>
  136. </StackPanel>
  137. </ScrollViewer>
  138. </Grid>
  139. </UserControl>