私は、その中心がただの派手なキーボードフックとウェッジであるプログラムを持っています。キーボード フック部分は、メイン プログラムとは別のライブラリです。メイン プログラムでは、監視するすべてのキーを構成ファイルから収集し、キーボード フックをインスタンス化します。私が監視しているキーには、キーが押されたときや離されたときに実行できるタスクがあります。(プログラムを開く、スキャナーをオンにするなどのタスク) Winforms でプロジェクトを開始したので、このライブラリに Controls という名前のフォルダーを作成することをお勧めします。ユーザーが実行したいタスクを選択できるダイアログフォームを作成しました。Winforms から WPF に切り替える必要がありました。したがって、クラス ライブラリに Winform コントロールを追加することは何もありません。試行錯誤の結果、WPF ユーザー コントロールに対して同じことを行うのは別の話のようです。そこで、新しい WPF Usercontrol プロジェクトを作成する方が簡単だと判断しました。(可能であれば、方法についてコメントを残していただけますか?)
したがって、私は WPF を初めて使用し、MVVM パターンを使用して足を濡らすには、この特定のライブラリが適していると判断しました。Type のサブクラスが 6 つしかないという点で小さいAbstractTask
です。私の一部は、Abstract Task my Model を使いたくてうずうずしています。まだよくわかりませんが、私のモデルだと思います。ビューの説明文字列フィールドを追加する必要がありますが、それは問題にはなりません。タスクの少なくとも 1 つに追加情報 (RunProgramTask など) が必要なので、?Action? も追加する必要があると考えます。すべての正しい情報が提供されていることを「確認」します。繰り返します..それは簡単なはずです。
というわけで最後に2点質問です。
- 私の理論は MVVM パターンに準拠していますか?
- すべてのフックとタスクなどを新しい WPF プロジェクトに移動し、古いプロジェクトを削除する必要がありますか? それとも、ライブラリから Winforms コントロールを削除して、それが 1 つのプロジェクトであると考えるべきですか?