2023年3月
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
無料ブログはココログ

 

« 読了:神無き世界の英雄伝 2 | トップページ | 今日届いた本 »

2008年8月24日 (日)

行き当たりばたりで作ったプログラムの問題

この前のエントリ「明日で夏休みもおしまいなわけで。」に、カスタムコントロールのリスト状にするのに、PanelのControlsプロパティにAddすれば良いと書いたけれど、だめだこりゃ。

というのも、PanelのControlsプロパティにカスタムコントロールを558個追加したとき、以下の例外が発生した。

System.ComponentModel.Win32Exception はハンドルされませんでした。
  Message="ウィンドウのハンドルを作成中にエラーが発生しました。"
  Source="System.Windows.Forms"
  ErrorCode=-2147467259
  NativeErrorCode=1158

フォームにカスタムコントロールを貼り付けられる上限ってのがある模様。まあ、考えてみれば当たり前だ。条件によりその数は変わるのだろうけど・・・。
んで、他の方法を検討する。 要は、カスタムコントロールを表示出来てスクロールできるパネルが欲しいだけなので、表示できる範囲のカスタムコントロールだけを用意して、縦スクロールバーはVScrollBarコントロールを使って制御する。カスタムコントロール内に入れる情報は、別途、ArrayListなりで保存して、スクロールのイベントにより、表示位置を移動させる。
こんな感じ。
これで作ってみよう。

« 読了:神無き世界の英雄伝 2 | トップページ | 今日届いた本 »

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック


この記事へのトラックバック一覧です: 行き当たりばたりで作ったプログラムの問題:

« 読了:神無き世界の英雄伝 2 | トップページ | 今日届いた本 »