RichTextEditor.xaml 6.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576
  1. <UserControl x:Class="InABox.DynamicGrid.RichTextEditor"
  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:sf="http://schemas.syncfusion.com/wpf"
  7. mc:Ignorable="d"
  8. d:DesignHeight="450" d:DesignWidth="800">
  9. <UserControl.Resources>
  10. <sf:FontFamilyStringConverter x:Key="FontFamilyStringConverter" />
  11. <sf:UnderlineToggleConverter x:Key="UnderlineToggleConverter" />
  12. <sf:LeftAlignmentToggleConverter x:Key="LeftAlignmentToggleConverter" />
  13. <sf:RightAlignmentToggleConverter x:Key="RightAlignmentToggleConverter" />
  14. <sf:CenterAlignmentToggleConverter x:Key="CenterAlignmentToggleConverter" />
  15. <sf:JustifyAlignmentToggleConverter x:Key="JustifyAlignmentToggleConverter" />
  16. </UserControl.Resources>
  17. <Border BorderBrush="DarkGray" BorderThickness="0.75" CornerRadius="2">
  18. <DockPanel>
  19. <sf:ToolBarAdv x:Name="Toolbar" DockPanel.Dock="Top" Focusable="False" GripperVisibility="Collapsed"
  20. IsOverflowOpen="False">
  21. <ComboBox Margin="12 2 0 2" Focusable="False" Width="160" x:Name="fontFamilyCombo"
  22. SelectedValue="{Binding Path=Selection.CharacterFormat.FontFamily, Mode=TwoWay, ElementName=Editor, Converter={StaticResource FontFamilyStringConverter}}"
  23. ItemsSource="{Binding Path=FontFamilySource}" />
  24. <ComboBox Margin="12 2 0 2" IsTabStop="False" Width="45" x:Name="fontSizeCombo" SelectedIndex="3"
  25. ItemsSource="{Binding Path=FontSizeSource}"
  26. SelectedValue="{Binding Path=Selection.CharacterFormat.FontSize ,Mode=TwoWay,ElementName=Editor}" />
  27. <sf:ColorPickerPalette x:Name="fontColorPicker" Margin="12 2 0 2" IsTabStop="False" Width="60"
  28. IsExpanded="False" MoreColorOptionVisibility="Collapsed"
  29. StandardPanelVisibility="Collapsed"
  30. Color="{Binding Path=Selection.CharacterFormat.FontColor ,Mode=TwoWay,ElementName=Editor}" />
  31. <sf:ButtonAdv x:Name="Bold" Margin="12 2 0 2" Focusable="False" SizeMode="Small" IsCheckable="True"
  32. IsChecked="{Binding ElementName=Editor, Path=Selection.CharacterFormat.Bold, Mode=TwoWay}" />
  33. <sf:ButtonAdv x:Name="Italic" Margin="12 2 0 2" Focusable="False" SizeMode="Small" IsCheckable="True"
  34. IsChecked="{Binding ElementName=Editor,Path=Selection.CharacterFormat.Italic,Mode=TwoWay}" />
  35. <sf:ButtonAdv x:Name="Underline" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  36. IsCheckable="True"
  37. IsChecked="{Binding ElementName=Editor, Path=Selection.CharacterFormat.Underline, Mode=TwoWay, Converter={StaticResource UnderlineToggleConverter}}" />
  38. <sf:ToolBarItemSeparator Margin="12 2 0 2" />
  39. <sf:ButtonAdv x:Name="AlignLeft" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  40. IsCheckable="True"
  41. IsChecked="{Binding ElementName=Editor, Path=Selection.ParagraphFormat.TextAlignment, Converter={StaticResource LeftAlignmentToggleConverter}, Mode=TwoWay}" />
  42. <sf:ButtonAdv x:Name="AlignCentre" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  43. IsCheckable="True"
  44. IsChecked="{Binding ElementName=Editor, Path=Selection.ParagraphFormat.TextAlignment, Converter={StaticResource CenterAlignmentToggleConverter}, Mode=TwoWay}" />
  45. <sf:ButtonAdv x:Name="AlignRight" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  46. IsCheckable="True"
  47. IsChecked="{Binding ElementName=Editor, Path=Selection.ParagraphFormat.TextAlignment, Converter={StaticResource RightAlignmentToggleConverter}, Mode=TwoWay}" />
  48. <sf:ButtonAdv x:Name="AlignJustify" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  49. IsCheckable="True"
  50. IsChecked="{Binding ElementName=Editor, Path=Selection.ParagraphFormat.TextAlignment, Converter={StaticResource JustifyAlignmentToggleConverter}, Mode=TwoWay}" />
  51. <sf:ToolBarItemSeparator Margin="12 2 0 2" />
  52. <sf:ButtonAdv x:Name="Hyperlink" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  53. Command="sf:SfRichTextBoxAdv.ShowHyperlinkDialogCommand"
  54. CommandTarget="{Binding ElementName=Editor}" />
  55. <sf:ButtonAdv x:Name="Picture" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  56. Command="sf:SfRichTextBoxAdv.InsertPictureCommand"
  57. CommandTarget="{Binding ElementName=Editor}" />
  58. <sf:ButtonAdv x:Name="Table" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  59. Command="sf:SfRichTextBoxAdv.ShowInsertTableDialogCommand"
  60. CommandTarget="{Binding ElementName=Editor}" />
  61. <sf:ToolBarItemSeparator Margin="12 2 0 2" />
  62. <sf:ButtonAdv x:Name="ZoomIn" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  63. SmallIcon="pack://application:,,,/Resources/zoomin.png" Click="ZoomIn_Click" />
  64. <sf:ButtonAdv x:Name="ZoomOut" Margin="12 2 0 2" Focusable="False" SizeMode="Small"
  65. SmallIcon="pack://application:,,,/Resources/zoomout.png" Click="ZoomOut_Click" />
  66. </sf:ToolBarAdv>
  67. <sf:SfRichTextBoxAdv x:Name="Editor" DockPanel.Dock="Top" EnableMiniToolBar="False"
  68. ContentChanged="RichTextBoxAdv_ContentChanged" BorderThickness="0"
  69. LostFocus="RichTextBoxAdv_LostFocus" OverridesDocumentBackground="True"
  70. LayoutType="Continuous" />
  71. </DockPanel>
  72. </Border>
  73. </UserControl>