C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 41 を表示中)
■21611 / )  Re[2]: 自作ダイアログについて
□投稿者/ 高見知英 (9回)-(2008/07/05(Sat) 23:55:34)
高見知英 さんの Web サイト
2008/07/05(Sat) 23:57:52 編集(投稿者)
2008/07/05(Sat) 23:56:40 編集(投稿者)

アンマネージリソースを使っているとしたら使っているのはフォームなので、フォームのDisposeメソッドをオーバーライドしてやるべきなんじゃないでしょうか。
Clickイベントで呼び出した際にDisposeするのはまた別の問題では?Formクラス自体が使用しているアンマネージリソースを解放するためにも呼ばなければいけないわけですし。
なので、上の例では、前者も後者も両方必要・・・という認識ですが、間違っていますでしょうか。

ところで、ツールパレットにダイアログを入れるというのは、OpenFileDialogのようなものということで間違いないのでしょうか。そうすると、呼び出し元のコントロール(Componentあたりを継承)をつくって、それにフォームを呼び出してもらう という実装になるのではないかと思いますが。
# Clickイベント(などのコード上)で呼び出すだけのダイアログであれば、そのときそのときにコードでnewすれば良いだけなので、ツールパレットに表示させる必要はないですよね。


ところで
No21610 (Azulean さん) に返信
> デフォルトのFormだと×ボタンで閉じると勝手にDisposeされてしまい、再利用できませんが、大丈夫ですか?
間違っていたら申し訳ないのですが、フォームがDisposeされるのは明示的にDisposeする(usingブロックを抜けるのも含む)か、GCで回収されたときだと思うのですが、いかがでしょうか。
# そうでないと一度閉じたダイアログを再表示したり、そのデータにアクセスすることができなくなってしまう・・・
返信 編集キー/


管理者用

- Child Tree -