2009-07-22 9 views
8

Windows 7には、タッチスクリーン用の本当に素敵なオンスクリーンキーボードプログラム/コントロールがあります。私は元々XP用に書かれた、そしてXP上に配備されるタッチスクリーンアプリを持っています。カスタムコントロールを使用するのではなく、このキーボードを自分のアプリに直接組み込むことは可能ですか?私はそれに関するプログラム的な情報を見つけることができないので、どんなリンクも非常に役に立ちます。具体的には、私は必要があります:Windows 7のオンスクリーンキーボードをWPFアプリケーションに組み込む

  1. キーボードは、.NET 3.5 sp1がインストールされているXPマシンで使用することができます。
  2. Windows 7でネイティブキーボードを非表示にするには、既にUIにタッチスクリーンキーボードが組み込まれているため、UIを乱雑にする必要はありません。

このネイティブキーボードには2つの魅力的な側面があります。最初に、それは自動的に顧客の言語にローカライズされています(ただし、アプリケーションの残りの部分は変更が必要です)。また、OSが「遅れている」かどうかを判断しようとするので、私はジェスチャーをやっています。なぜなら、私は明らかにキーボードをタイプしているからです。

このアプリはWPFベースであり、Windows 7ベースのコントロールとの簡単な統合を意味します。

編集:私はXPのことが本当に好きですが、それは必須条件ではありません。しかし、Win7でキーボードを使用する能力は、それが可能であるべきであり、それを行う正しい方法さえあるようである。

答えて

2

私が見つけた最高のものはこれです:

http://interactiveasp.net/blogs/natesstuff/archive/2008/10/01/ink-in-wpf-using-textinputpanel-for-text-input.aspx

それは、WPFのうち、相互運用機能を使用していますが、本当にうまく動作するようです。

EDIT:

+0

あなたの答えは私が答えに近づくようなもののようです。基本的には、これを行うにはTablet XP SDKを使用し、それを動作させるためにはコントロールを記述します。しかし、タブレット版でない限り、キーボードはXPでは利用できません。 – mmr

+0

正しい、afaik。 –

1

簡単に言えば、私はそれを疑う。 Windows 7で動作していた独自のアプリケーションでWindows 7キーボードを使用しようとしていた場合は、と入力してください。しかし、あなたが話していることは、XP上で動作している自分のアプリケーション内でWindows 7 OSレベルのコンポーネントを実行しようとしていることです。 Windows 7上に構築されていれば、アプリケーションで実行できるかどうかはわかりません。

私たちの製品はオンスクリーンキーボードを使用する必要もあり、誰かが作ったものを買うことや、自分たちのものを買うことができないという選択肢がありません。 OSのキーボードとの簡単な相互運用性の解決策は見つかりませんでした。しかし、私たちは独自に作成し、数週間で完全にテストしました。だから、でもが悪いです。私はその道を行くだろう。

+0

を。問題を尋ねるポイントは、Windows 7はタッチスクリーンとの互換性が非常に高いと考えられているので、私のプログラムからそれを意味のあるやり方でやり取りできるはずです。ネイティブのタッチスクリーンコントロールを組み込むことは理にかなっています。 XPのことは、私が知っているより多くの願いは、要件よりも満たされないでしょう。 – mmr

+0

Microsoft Windows 7フォーラムを試しましたか? – Charlie

0

添付プロパティを使用して、WPFアプリケーションでカスタム画面上のキーボードレイアウトを添付するために...私は実際にそれを書いたものだった希望が、私がしたすべてはそれを見つけることでした。 あなたはベン・コンスタブルのRamoraパターンからの明確なアイデアを取得します: http://blogs.msdn.com/b/bencon/archive/2006/07/26/more-advanced-attached-property-use-the-ramora-pattern.aspx

をそして、あなたはここからソースコードを見つけることができます。 http://www.codeproject.com/KB/WPF/TouchScreenKeyboardWPF.aspx

おかげで、私はすでにそのルートを行っている

関連する問題