3

WPF TextBox の RoutedUICommand "Copy" の動作をオーバーライドしたいと思います。

TextBox を継承する新しい TextBoxExtended クラスを作成しなくても可能ですか?

私はその点に達しましたが、今は少し迷っています。

Private Sub tbSource_PreviewExecuted(ByVal sender As System.Object, ByVal e As System.Windows.Input.ExecutedRoutedEventArgs)

        Dim commandName = DirectCast(e.Command, Input.RoutedUICommand).Text

        If commandName = "Copy" Then

        End If

End Sub

続行する方法はありますか?

4

1 に答える 1

4

コマンド バインディングをテキスト ボックスに追加して、「コピー」コマンドを処理できます。たとえば、次のようにします。

<StackPanel>
  <TextBlock x:Name="TextBox">
    <TextBlock.CommandBindings>
        <CommandBinding Command="{x:Static ApplicationCommands.Copy}"
                        Executed="CommandBinding_Executed"/>
    </TextBlock.CommandBindings>
  </TextBlock>
  <Button Content="Copy" 
          Command="{x:Static ApplicationCommands.Copy}"
          CommandTarget="{Binding ElementName=TextBox}"/>
</StackPanel>
于 2011-01-06T09:19:03.140 に答える