5

SilverlightでCtrl+を検出する最良の方法は何ですか?V

クリップボードにアクセスするために、Ctrl+を検出したい。V

4

2 に答える 2

6
if (e.Key == Key.V)
{
    if ((Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control)
    {
        //do what you want on paste
    }
}

これは keyUp イベントで使用する必要があります。詳細については、http: //msdn.microsoft.com/en-us/library/cc189015%28VS.95%29.aspxを参照してください。

于 2010-07-08T17:16:08.520 に答える
0

編集

CTRL+ VkeypressをSilverlightアプリケーションでグローバルにキャプチャするには、困難が伴います。イベントは子要素から始まり、親コントロールにバブルダウンするため、ルートUIElementでKeyDownを処理するだけでは機能しません。テキスト入力コントロールは、最初にイベントを取得し、それを窒息させます(イベント引数でHandledをtrueに設定することにより)。DOMブリッジを使用し、Silverlight要素自体のブラウザーKeyDownイベントにハンドラーをサブスクライブすると、実際には最初にそれに到達することができ、Silverlightコントロールができる前に完全に処理することさえできます。CTRL+を傍受する最も簡単な方法だと思いますが、Vテストしていません。

元の回答

System.Windows.Clipboardクラスを使用する必要があります。

  • クリップボードからテキストを取得するGetText
  • クリップボードにテキストを配置するSetText
  • クリップボードに現在テキストが含まれているかどうかを示すContainsText
于 2010-06-02T06:31:13.633 に答える