Вот очень простой пример кода:
<DockPanel>
<ToolBar DockPanel.Dock="Top" IsTabStop="False">
<ToggleButton MinWidth="40" Command="EditingCommands.ToggleBold" CommandTarget="{Binding ElementName=XAMLRichBox}" TextBlock.FontWeight="Bold" IsTabStop="False">B</ToggleButton>
</ToolBar>
<RichTextBox x:Name="XAMLRichBox" SpellCheck.IsEnabled="True" MinHeight="100"/>
</DockPanel>
когда я запускаю его, набрав что-то в RichTextBox
, я могу использовать ToggleButton
, чтобы получить эффект BOLD, и все в порядке.
Но если я нажму ToggleButton
перед вводом чего-либо в RichTextBox
(независимо от того, RichTextBox
получит фокус или нет), хотя ToggleButton
станет Checked
, мой RichTextBox
по-прежнему будет использовать обычный стиль (не BOLD), пока я снова не нажму ToggleButton
. Это ошибка? как я могу обойти? Спасибо!