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

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

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

CommonDialogの継承


(過去ログ 5 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■4948 / inTopicNo.1)  CommonDialogの継承
  
□投稿者/ yuki 二等兵(1回)-(2006/07/13(Thu) 12:50:36)

分類:[C#] 


分類:[C#] 

エディターを作っているのですが、ファイルを保存する時のSaveFileDialogに、
文字コードの選択を追加したいと考え、CommonDialogを継承するクラスを作成し、
それを呼び出したのですが、ダイアログが表示されませんでした。どうすれば
ダイアログが表示されるのでしょうか?

作成したクラス:
class Class1 : CommonDialog
{
public override void Reset(){
}
protected override bool RunDialog(System.IntPtr pr)
{
return true;
}

}
クラスの呼び出し:
Class1 MyDialog = new Class1();
if (MyDialog.ShowDialog() == DialogResult.OK)
{

}



0
引用返信 編集キー/
■4949 / inTopicNo.2)  Re[1]: CommonDialogの継承
□投稿者/ まどか 大尉(174回)-(2006/07/13(Thu) 13:13:38)

分類:[C#] 

> protected override bool RunDialog(System.IntPtr pr)
> {
> return true;
> }

prを基にごにょごにょしたあとで
return MyBase.RunDialog(pr) ※C#はこんな書き方でいいのかな?
でいいのかな?


0
引用返信 編集キー/
■4950 / inTopicNo.3)  Re[2]: CommonDialogの継承
□投稿者/ 名無しぃシャープ 少尉(126回)-(2006/07/13(Thu) 13:19:31)

分類:[C#] 

No4949に返信(まどかさんの記事)
> return MyBase.RunDialog(pr) ※C#はこんな書き方でいいのかな?
> でいいのかな?

return base.RunDialog(pr);

です。

予約語くらいは知っていた方がいいっすよ。

0
引用返信 編集キー/
■4954 / inTopicNo.4)  Re[3]: CommonDialogの継承
□投稿者/ まどか 大尉(175回)-(2006/07/13(Thu) 15:07:15)

分類:[C#] 

> return base.RunDialog(pr); です。
> 予約語くらいは知っていた方がいいっすよ。

目にしていないわけはないんですけど
普段使わないと、ついつい忘れて。。。
ご指摘ありがとうございました。


0
引用返信 編集キー/
■4968 / inTopicNo.5)  Re[4]: CommonDialogの継承
□投稿者/ yuki 二等兵(2回)-(2006/07/13(Thu) 19:23:57)

分類:[C#] 

お答えありがとうございます。
return base.RunDialog(pr);
のように書くと、
「抽象基本メンバを呼び出すことはできません。」
とエラーがでます。CommonDialogを継承したクラスを使うことはできないのでしょうか?


0
引用返信 編集キー/
■4974 / inTopicNo.6)  Re[5]: CommonDialogの継承
□投稿者/ まどか 大尉(177回)-(2006/07/13(Thu) 23:37:57)

分類:[C#] 

全然とんちんかんなこと言ってましたね。。。私
ShowDialogが呼び出され、その中で派生クラスのRunDialogが呼び出される。
で実際の独自ダイアログは派生クラスに実装されるので、MustOverrideなRunDialogでそれを表示しなさいということですね。
なのでダイアログそのものを自分で作成してRunDialogで表示しなくてはなりません。

簡単に言うと、CommonDialogはフォームを持っておらず、派生クラスがフォームを持っているということです。

0
引用返信 編集キー/
■5115 / inTopicNo.7)  Re[6]: CommonDialogの継承
□投稿者/ yuki 二等兵(3回)-(2006/07/25(Tue) 21:49:11)

分類:[C#] 

SaveFileDialogが表示されるまえに、べつのフォームを表示し、そこで文字コードを指定するようにしました。
どうもありがとうございました。

解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -