BOTAContent.xaml 5.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129
  1. <UserControl
  2. x:Class="PDF_Office.Views.BOTA.BOTAContent"
  3. xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
  4. xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
  5. xmlns:bota="clr-namespace:PDF_Office.ViewModels.BOTA"
  6. xmlns:convert="clr-namespace:PDF_Office.DataConvert"
  7. xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
  8. xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
  9. xmlns:local="clr-namespace:PDF_Office.Views.BOTA"
  10. xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
  11. xmlns:prism="http://prismlibrary.com/"
  12. d:DataContext="{d:DesignInstance Type=bota:BOTAContentViewModel}"
  13. d:DesignHeight="450"
  14. d:DesignWidth="800"
  15. prism:ViewModelLocator.AutoWireViewModel="True"
  16. mc:Ignorable="d">
  17. <UserControl.Resources>
  18. <ResourceDictionary>
  19. <convert:VisibleToBoolConvert x:Key="VisibleToBoolConvert" />
  20. <convert:BoolToVisible x:Key="BoolToVisibleConvert" />
  21. </ResourceDictionary>
  22. </UserControl.Resources>
  23. <Grid>
  24. <Grid.ColumnDefinitions>
  25. <ColumnDefinition Width="48" />
  26. <ColumnDefinition />
  27. </Grid.ColumnDefinitions>
  28. <Border Background="Transparent">
  29. <Border.ContextMenu>
  30. <!-- CnotextMenu 不在视觉书树内,绑定其他控件名称需要用到x:Refrence -->
  31. <ContextMenu>
  32. <MenuItem
  33. Name="MenuThumbnail"
  34. Header="{Binding Source={x:Reference Name=TabItemThumbnail}, Path=Name}"
  35. IsCheckable="True"
  36. IsChecked="True" />
  37. <MenuItem
  38. Name="MenuOutLine"
  39. Header="{Binding Source={x:Reference Name=TabItemOutLine}, Path=Name}"
  40. IsCheckable="True"
  41. IsChecked="True" />
  42. <MenuItem
  43. Name="MenuBookMark"
  44. Header="{Binding Source={x:Reference Name=TabItemBookMark}, Path=Name}"
  45. IsCheckable="True"
  46. IsChecked="True" />
  47. <MenuItem
  48. Name="MenuAnnotation"
  49. Header="{Binding Source={x:Reference Name=TabItemAnnotation}, Path=Name}"
  50. IsCheckable="True"
  51. IsChecked="True" />
  52. <MenuItem
  53. Name="MenuSearch"
  54. Header="{Binding Source={x:Reference Name=TabItemSearch}, Path=Name}"
  55. IsCheckable="True"
  56. IsChecked="True" />
  57. <MenuItem
  58. Name="MenuFrom"
  59. Header="{Binding Source={x:Reference Name=TabItemForm}, Path=Name}"
  60. IsCheckable="True" />
  61. <MenuItem
  62. Name="MenuSign"
  63. Header="{Binding Source={x:Reference Name=TabItemSign}, Path=Name}"
  64. IsCheckable="True" />
  65. </ContextMenu>
  66. </Border.ContextMenu>
  67. </Border>
  68. <TabControl
  69. Grid.ColumnSpan="2"
  70. Background="Transparent"
  71. Style="{StaticResource TabControlWithUnderLineStyle}"
  72. TabStripPlacement="Left">
  73. <!-- 建立一个空的标头占位 -->
  74. <TabItem
  75. Height="0"
  76. Margin="0"
  77. BorderThickness="0" />
  78. <TabItem
  79. Name="TabItemThumbnail"
  80. Width="48"
  81. Height="48"
  82. Header="缩略"
  83. Visibility="{Binding ElementName=MenuThumbnail, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  84. <TabItem
  85. Name="TabItemOutLine"
  86. Width="48"
  87. Height="48"
  88. Header="大纲"
  89. Visibility="{Binding ElementName=MenuOutLine, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  90. <TabItem
  91. Name="TabItemBookMark"
  92. Width="48"
  93. Height="48"
  94. Header="书签"
  95. Visibility="{Binding ElementName=MenuBookMark, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  96. <TabItem
  97. Name="TabItemAnnotation"
  98. Width="48"
  99. Height="48"
  100. Header="注释"
  101. Visibility="{Binding ElementName=MenuAnnotation, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  102. <TabItem
  103. Name="TabItemSearch"
  104. Width="48"
  105. Height="48"
  106. Header="搜索"
  107. Visibility="{Binding ElementName=MenuSearch, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  108. <TabItem
  109. Name="TabItemForm"
  110. Width="48"
  111. Height="48"
  112. Header="域"
  113. Visibility="{Binding ElementName=MenuFrom, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  114. <TabItem
  115. Name="TabItemSign"
  116. Width="48"
  117. Height="48"
  118. Header="签名"
  119. Visibility="{Binding ElementName=MenuSign, Path=IsChecked, Converter={StaticResource BoolToVisibleConvert}, Mode=TwoWay}" />
  120. <i:Interaction.Triggers>
  121. <i:EventTrigger EventName="SelectionChanged">
  122. <i:InvokeCommandAction Command="{Binding TabControlSelectionChangedCommand}" PassEventArgsToCommand="True" />
  123. </i:EventTrigger>
  124. </i:Interaction.Triggers>
  125. </TabControl>
  126. <ContentControl Grid.Column="1" prism:RegionManager.RegionName="{Binding BOTAContentRegionName}" />
  127. </Grid>
  128. </UserControl>