2016-08-09 9 views

答えて

2

タッチイベントを追加することができます

private void Button_Click(object sender, RoutedEventArgs e) 
{ 
    this.Title = "Clicked"; 
} 

あなたはPreviewMouseDownPreviewTouchDownを購読することができます。

Page.xamlを

<Button PreviewMouseDown="Button_PreviewMouseDown" 
     PreviewTouchDown="Button_PreviewTouchDown" /> 

Page.xaml.cs

private void Button_PreviewMouseDown(object sender, MouseButtonEventArgs e) 
    { 
     MessageBox.Show("Mouse was used."); 
    } 

    private void Button_PreviewTouchDown(object sender, TouchEventArgs e) 
    { 
     MessageBox.Show("Touchscreen was used."); 
    } 

私はあなたが実際のクリックでいずれかのにEventArgsにもアクセスできるようになります信じていません。イベント。

プレビューイベントとは対照的に作業を行う必要がある場合は、プレビューイベントのインスタンス変数を設定して、どこから来たのかを知るクリックイベントになることをおすすめします。

+0

優れた答え、あなたのご意見をありがとうございます。私は最終的に私がやろうとしているように私は特にあなたの最後の文が好きです。 – John

0

イベントハンドラを設定する必要があります。デザイナーで、ボタンをダブルクリックすると、それがあなたのために設定されます。

次に、コードの後ろにあなたが望むコードを追加します。あなたにもなどのタッチダウン、TouchUpの、

+0

をしかし、クリックイベントがマウスクリックまたはタッチスクリーンによるものであった場合はどのように知っていますか? – John

+0

クリックイベントがタッチで発生するとは思わないので、タッチイベントを設定する必要があります。私のタッチパッドは今日壊れているので確認することができますが、そのためにタッチイベントハンドラの1つを設定する必要があると思います。また、マウスは、押されていたボタンでMouseEventArgsを渡しますが、タッチパッドは表示されません – GreatJobBob

0

Windows 7以降のバージョンでは、複数のタッチセンシティブデバイスからの入力を受信できます。 WPFアプリケーションは、タッチが発生したときにイベントを発生させることによって、マウスやキーボードなどの他の入力としてタッチ入力を処理することもできます。

WPFは、タッチが発生したときにタッチイベントと操作イベントの2つのタイプのイベントを公開します。タッチイベントは、タッチスクリーン上の各指に関する生データおよびその動きを提供する。操作イベントは、入力を特定のアクションとして解釈します。このセクションでは、両方のタイプのイベントについて説明します。

WPFを使用すると、アプリケーションはタッチに反応することができます。たとえば、タッチスクリーンなどのタッチセンシティブデバイスで1つまたは複数のフィンガーを使用してアプリケーションとやりとりすることができます。このウォークスルーでは、タッチを使用して単一のオブジェクトを移動、サイズ変更、または回転させるアプリケーションを作成します。

出典MSDN:https://msdn.microsoft.com/en-us/library/ee649090.aspx

また、このCodeProjectの記事読んで - http://www.codeproject.com/Articles/692286/WPF-and-multi-touch

関連する問題