タッチ ディスプレイのケーブルを抜き差しすると、WPF アプリケーション上でタッチおよびスタイラス操作ができなくなる

こんにちは、Platform SDK (Windows SDK) サポートチームです。 今回は、タッチディスプレイを接続したコンピューターにおいて、タッチやスタイラスで WPF アプリケーションを操作する場合の問題についてご案内します。   現象 コンピューターに接続しているタッチ ディスプレイのケーブルを抜き差しすると、稀に WPF アプリケーション上でタッチおよびスタイラス操作ができなくなる問題が確認されています。 この問題が発生すると、WPF アプリケーションを再起動するまで、WPF アプリケーション上のタッチおよびスタイラス操作が行えなくなります。   詳細 コンピューターに接続しているタッチ ディスプレイのケーブルを抜き差しすると、Windows はデバイスの抜去、接続状態を検出し、全てのトップレベル ウィンドウに対して、新しいデバイスとしてタッチ ディスプレイが有効になったことを通知します。 この通知を受け取った WPF アプリケーションは、アプリケーションで管理・制御しているタッチおよびスタイラス用の内部情報を初期化して、新しいデバイス上でのタッチおよびスタイラス操作に備えます。 ところが、Windows ならびに .Net Framework (WPF) の内部処理において、タッチおよびスタイラス関連の処理が、適切に制御されないという問題がありました。 こうした問題により、新しいデバイスとしてタッチ ディスプレイが接続されたにも関わらず、WPF アプリケーションでは既存の内部情報を適切に初期化することができず、ユーザーがタッチおよびスタイラス操作を行っても、WPF アプリケーションがそれを検出できないという問題が発生します。   原因 本現象は、以下のバージョンの .NET Framework (WPF) および Windows の問題です。 弊社製品の問題によりご不便をおかけしますことを、深くお詫びいたします。 Windows 7 SP1 Windows 8 Windows 8.1 Windows…


Path Markup – 楕円弧の描画について

こんにちは、Platform SDK (Windows SDK) サポートチームです。  WPF は、「Loose XAML」と呼ばれるコンパイル不要なマークアップを読み込み、Internet Explorer 内に描画する機能を持っています。 今回は、Loose XAML で非常に大きな楕円弧を書いた場合、始点と終点が正しい位置に描画されない事象が見られることをご紹介します。  例えば、次のようなコードを記述し、拡張子 .xaml で保存します。 これにより、Loose XAML ファイルが作成されます。 このファイルを Internet Explorer 11 で表示した場合、WPF のレンダリングエンジンによって、図 1のような楕円弧が描かれます。     <?xml version=”1.0″ encoding=”utf-8″?>   <Canvas  Background=”#ffffff” xmlns=”http://schemas.microsoft.com/winfx/2006/xaml/presentation” xmlns:x=”http://schemas.microsoft.com/winfx/2006/xaml”>     <Canvas.RenderTransform>        <TransformGroup>             <TranslateTransform X=”-26000″ Y=”-3000″ />         </TransformGroup>      </Canvas.RenderTransform>     <Path Stroke=”#ff0000″>       <Path.Data>           <PathGeometry Figures=”M 26557.35,3320.226 A 1703595,1703595,0,1,0,26569.29,3290.773″/>      </Path.Data>     </Path>  </Canvas>   上記は PathGeometry 要素により、Figures 属性中の…