【Avalon】WinFX を語るスレ Part5【Indigo】
レス数が900を超えています。1000を超えると表示できなくなるよ。
0930デフォルトの名無しさん
2006/02/11(土) 19:18:49んな一言で説明できるようなもんでもないんだけどな。
とりあえず、Controlというオブジェクトが極端にでかい。たった一つのクラスで
ほとんど実装してるような感じだ。これを比較的素直にそのまま実装したWinForm
のControlクラスをildasmででものぞいてみればいい。アホのようにでかいから。
しかもこれはカーネルリソースを消費するわ余計な内部状態まで持つので同期を
しなくてはならない。
結果としてコントロールはもっと軽くなくてはいけないのに非常に重い仕組みに
なってしまっている。これの証明は簡単でIEでもOfficeでもMozillaでもそういう
ものがすべて「一つのコントロールに独自に描画」してることがはっきり示している。
CheckedListBoxがなんでCheckBoxの集合になっていない?ListBoxがなんで
Labelの集合になっていない?重いからだよ。
まあ、だからWPFはトップレベルコントロール以外にハンドルを持たせないように
なっている。
レス数が900を超えています。1000を超えると表示できなくなるよ。