2011-09-23 12 views
7

OK、レンダリング中およびレイアウトの通過時にWPF UIがフリーズします。複雑なWPF UIの再構築時のフリーズを防止しますか?

これはどのようなエスケープですか?

誰かがXAMLのシリアル化とDesrializationについて話しましたが、実際には機能しますか?私が見るのは、デシリアライズされた複雑なUIのための一時的な経過とフリーズされたウィンドウです。

すぐにUIを読み込むことはできますか?

P.S.私はバックグラウンドスレッドやものに関するビューデータの読み込みについては言及していません。とにかく今日のノルムです。しかし、そこにあるANY(これは必死に聞こえるはず)複雑なUIのためにハングしたウィンドウを生成しない方法ですか?複雑な私は重いスタイル、深く階層的なテンプレート、非仮想パネルなどを意味します。

+1

Visual Studioでのみ入手できますか?私のためにVisual Studioは何度かハングアップしますが、.exeはかなり安定しています。 Visual Studio SP1は多くの助けになりました。マルチプロセッサマシンも役立ちます。私にとっては、視覚木を何度か構築することに掛かるようです。 XAMLに無効なバインディング名があると、ハングアップが増えるようです。しかし、私が1〜5分間座らせると、それは機能します。 90%の時間は2〜5秒で読み込まれます。私は、私が使っていないプロジェクトのページには決して残さない。 – Paparazzi

+0

'Background'優先度の低いDispatcherクラスの使用はどうですか? – vorrtex

+0

hmmm ...多分私は、私がwinforms複雑なUI(データ読み込みを維持)のためにハングアップしないことを認めることが嫌いなので、私は必死です。 : –

答えて

2

あなたの質問のファブラを考えると、あなたはRob Relyeaからの返答が非常に少ないと思います。 PreventFreezingというプロパティを持っていて、誰かが間違ってfalseに設定してもらいたいです。しかし、私たちはそうではありません。私は問題を見る唯一の方法は、事例ごとにそれを見ることだと思います。 Prismやalikes sipmlyのようなフレームワークの中には、円滑な実行をサポートするように設計されていないものもあります。

WPF/SLを5年以上処理しても、私たちはまだプロトタイプで設計されていますが、まだプロトタイプで作業していると感じています。多くのことがうまく設計されていますが、パフォーマンスの期限を過ぎないように設計されています。

私は、「他のものについてあまりにも多くのことを気にかけて未来を追加する」ことは、大きな問題のライフサイクルでは非常に自然な段階であると思います。この段階では、先物の数は必然的に増加するため、技術的な負債は増加します。これは技術的な借金返済が続き、WPFで起こっていないようなすべての良いものです。パフォーマンスレビュー、構文のユーザビリティレビューなどが含まれます。

+0

*間違ったところでコメントを編集しました - ごめんなさい –

+0

はい、WPFはまだ完成した洗練されたフレームワークではなく、かなり詳細な概念証明のように感じられます。 –

関連する問題