В WPF я пытаюсь использовать команды для установки всего содержимого в нескольких текстовых полях одновременно.Следующий код может заставить команду на кнопке переключения выполняться, для которой когда-либо текстовое поле имеет область действия, но я не могу заставить команду выполнить их одновременно.
<StackPanel>
<ToggleButton FocusManager.IsFocusScope="True" Command="EditingCommands.ToggleBold" Width="20" Height="20"></ToggleButton>
<RichTextBox Width="200" Height="200">
<RichTextBox.CommandBindings>
<CommandBinding
Command="EditingCommands.ToggleBold"
Executed="CommandBinding_Executed" CanExecute="CommandBinding_CanExecute"/>
</RichTextBox.CommandBindings>
</RichTextBox>
<RichTextBox Width="200" Height="200">
<RichTextBox.CommandBindings>
<CommandBinding
Command="EditingCommands.ToggleBold"
Executed="CommandBinding_Executed" CanExecute="CommandBinding_CanExecute"/>
</RichTextBox.CommandBindings>
</RichTextBox>
</StackPanel>
Private Sub CommandBinding_Executed(ByVal sender As System.Object, ByVal e As System.Windows.Input.ExecutedRoutedEventArgs)
DirectCast(sender, RichTextBox).SelectAll()
DirectCast(sender, RichTextBox).Selection.ApplyPropertyValue(RichTextBox.FontWeightProperty, "Bold")
e.Handled = False
End Sub
Private Sub CommandBinding_CanExecute(ByVal sender As System.Object, ByVal e As System.Windows.Input.CanExecuteRoutedEventArgs)
e.CanExecute = True
End Sub
Возможно ли то, что я пытаюсь сделать с помощью команд?Я бы предпочел не делать прямых ссылок на каждое текстовое поле в коде внутри click_event или чего-либо подобного.
Спасибо за помощь!