1

ここに潜んでいますが、私自身の質問の時間です。質問はこのコードに適用されます: http://pastebin.com/dQKnSSpYそうしないと、このページが台無しになるため、pastebin に投稿しました :)

私の質問は、この GUI を実行したときに GUI がかなり遅れている理由です。コントロールを追加してBindingSourceを使用するための別のワーカースレッドであるDoubleBufferingなど、すでにいくつかのことを試しました。まだ何も役に立ちませんでした。普段は C# のスキルは大丈夫なので、少しばかげているように感じます。(Windows フォームの新機能)

前もって感謝します

4

2 に答える 2

1

あなたの問題は、 Paint イベント内でコントロールを作成しているという事実にあると思います。私は今Windowsフォームで少し錆びていますが、コントロールがそれ自体を再描画する必要があるときにペイントイベントが呼び出され、それはWM_PAINTメッセージでOSによって制御されると思います。そして、それは頻繁に起こる可能性があります。Paint イベントではなく、Form コンストラクターにコントロールを追加してみてください。

于 2013-04-29T09:15:12.783 に答える
0

これは非常に単純な変更ですが、役立つ場合があります。

http://pastebin.com/FnXJCAUE

GUI の更新から計算を取り出しScreen.PrimaryScreen.WorkingArea、GUI クラスの初期化時に一度だけ計算される定数の整数に置き換えました。これは、各 GUI 描画で実行される計算の数を減らすのに役立ち、一般的に描画を高速化するのに役立つはずです。

于 2013-04-29T09:09:42.087 に答える