-1

実行中のすべてのタスクを表示する Windows フォーム アプリケーションを作成しようとしています。必要に応じてタスクを個別に停止したい。アプリケーションをコンソール アプリケーションとして動作させていますが、それを Windows フォーム アプリケーションとしてビルドしようとすると失敗します。これが私のコードの仕組みです。

  • ループ
    • タスクを作成する
    • リストに格納する
    • タスクを開始=
  • エンドループ

このリストをフォームの listView に表示し、数秒ごとに更新して、このタスクの名前とステータスを表示したいと考えています。ありがとう。

4

1 に答える 1

3

アプリケーションをコンソール アプリケーションとして動作させていますが、それを Windows フォーム アプリケーションとしてビルドしようとすると失敗します。

Windows フォームへの移植中にロジックを変更しなかった場合、タスク内のバックグラウンド スレッドから Windows フォーム コントロールを更新したことが原因である可能性があります。

バックグラウンド スレッドからではなく、メイン (UI) スレッドからのみ Windows フォーム コントロールを使用できます。UI の更新を実行する場合は、コールバックを使用するControl.Invokeか、UI スレッドにマーシャリングする必要があります。Control.BeginInvoke

于 2013-06-21T18:57:56.083 に答える