にコピーするシナリオ:DevExpress.XtraTreeList.TreeList全体をC#
データベースを使用してTreelistを作成して設定しています。
これはかなり時間がかかる作業であり、guiをハングアップさせたくない(「プログレスバー」などはありません)。
私はこれをBackgroundworkerに移すことにしましたが、別のスレッドからツリーを更新してから作成したツリーをバックグラウンドスレッドで作成しています。全体の内容をGUIで表示されたツリーに表示します。
- すべてのノード、ノードデータなどをトラバースしてコピーする最良の方法は何ですか?
- これを行うもう1つの方法がありますか?つまり、Backgroundworkerでツリーを作成/作成し、GUIに表示しますか?
編集:私は、バックグラウンドスレッドでGUIコンポーネントを配置する 'ハック'を認識していますが、このプロジェクトに投げ込まれて、「GUIが非常に頻繁に停止しないようにする」非常に限定された時間枠で、データのロードと作成を再作成することは実際にはオプションではありません(これがベストプラクティスであるにもかかわらず)。 "CreateTree"ファンクションを新しいスレッドで実行するように変更し、新しく作成したツリーを "ThreadComplete"に渡してコピーしました。
いいえ、おしゃべり