アップロードの進捗状況がわかるフォームについて知らないクラスでファイルをアップロードしたい。何らかの形でそれを知らせるイベントやデリゲートの方法はありますか? 私は進捗状況を直接設定できますが、ビューの実装に依存しないようにする必要があります。 ありがとう進捗状況を他のクラスから継続的に通知する
答えて
間違いなく。アップロードクラスで何らかの「ProgressMade」イベントを実装する必要があります。このイベントでは、フォームが登録されます(または、コントローラのような仲介者によって購読されます)。あなたのクラスがデータが送信されたことを検出すると、 "ProgressMade"イベントを発生させる必要があります。
どのように発生するかは、クラスがアップロードを実行するために使用している方法によって異なります。 StreamWriterを使用している場合、残念ながらそれらのクラスには進行状況を監視する「反応的」イベントがありません。すべてが失われません。 ProgressMadeを起動するために使用できる「WritePerformed」を起動するために使用しているクラスから派生できるはずです。この回答を確認してください:how to increase progressbar when i write xml?。それはかなり多くの作家に適用する必要があります。 Socketのように抽象的ではないものを使用している場合は、接続にプッシュしているバイト数を十分に把握できるはずです。
はい私は送信されたバイトの量を追跡することができます、私はループ内のチャンクでそれを送信します... thaksそれはかなり簡単で有望ですが、私はそれを見て:) – Zavael
- 1. 通知の進捗状況を表示
- 2. VBScriptスクリプトの進捗状況の通知
- 3. 進捗状況通知ECMAScript約束
- 4. SparkR 2.0:進捗状況の進捗
- 5. パスカル進捗状況
- 6. バックグラウンドサービスからの通知の進捗状況を更新しました
- 7. XMLHttpRequestからの進捗状況
- 8. 外部クラスからのBackgroundWorkerレポートの進捗状況?
- 9. Directory.GetFilesの進捗状況
- 10. 進捗状況のFTPファイルアップロード
- 11. カラープログレスアニメーションの進捗状況バー?
- 12. JIRAのチャート進捗状況
- 13. 進捗状況のマルチプロセッシング
- 14. Cake:ビルドスクリプトの進捗状況
- 15. CABasicAnimationの進捗状況は?
- 16. ES6 Promise.allの進捗状況
- 17. HTTPWebRequestの進捗状況
- 18. Openfeint Androidの進捗状況
- 19. DBCC SHRINKFILEの進捗状況
- 20. 進捗状況のテストケース - Jasmine
- 21. spark.ml.gradientboostingの進捗状況レポート?
- 22. 時間の進捗状況
- 23. 進捗状況のスクロールtextview
- 24. 進捗状況がフラッシュ
- 25. Androidダウンロードマネージャー(進捗状況ダイアログ)
- 26. Androidカスタムタイトルバー進捗状況
- 27. 進捗状況のファイルをコピーする
- 28. UIprogressViewのアップデートの進捗状況を知る
- 29. SED(または他の何か)と解析の進捗状況
- 30. uiwebviewの進捗状況を知る方法
クラスは、進行状況を通知するためにフォームを購読できるイベントを公開します(進捗状況の変更 - >イベント発生)。 BackgroundWorkerは何をしているのでしょうか? – Alex
[この回答](http://stackoverflow.com/questions/281408/pattern-for-progress-status-reporting)のリンクを参照してください。 –