none
【VS2010+WPF4.0】コード生成したButtonが、Windows Touch で押下できない RRS feed

  • 質問

  • 【開発環境】

    ・Visual Studio 2010, WPF4.0

    ・Window 7 Home Premium

    ・タッチ対応ディスプレイ

     

    【状況】

    cs ファイルにて、以下のコードを記述しました。

    マウスでのクリックには反応するのですが、

    タッチにてボタンを押下しても button_click が呼ばれません。

     

    Button btn = new Button();
    
    btn.Click += new RoutedEventHandler(button_click);
    
    canvas1.Children.Add(btn);
    
    
    
    ...
    
    
    
    private void button_click(...) {
    
       // hogehoge
    
    }
    
    

     

    【備考】

    なお、xmal にて Button を配置し、 button_click に関連つけると

    タッチでも button_click が呼ばれます。

     

    ---------------------------------------------------------------------------------------------------------------

    【質問内容】

    ・cs にてコード生成した Button の Click イベントを「タッチ」で呼びたいのですが、方法はありますでしょうか?

     

    【備考】

    ・TouchUp イベントは別の用途で使用するため、使えません。Button の Click イベントを反応させたいです。

     

    タッチを扱っている方は少ないと思われますが、よろしくお願いいたします。

    • 編集済み おのゆ 2010年4月14日 14:47 言い回しを直しました。
    2010年4月14日 14:31

すべての返信

  • 自己返信です。

     

    申し訳ありません。

    検証を続ける中で、必要な情報を記述していないことが分かりました。

     

    【現象】

    ・Button のプロパティにおいて、 IsManipulationEnabled を true にすると、タッチにて Click イベントが発生しなくなる。

    ・これは、cs コードでの Button 生成/xmal での Button 生成に関係なく起こる現象である。

     

    ManipulationイベントとClickイベントは排他になっているようです。

    仕様のようなので解決方法は無いと思われますが、これを解除する方法がありましたらお願いします。

    2010年4月15日 2:55