csc.exeを使用してC#のプログラミングをしています。
以下のようにファイルダイアログを開くコードをcsc.exeでコンパイルしました。
しかし、コンパイル時にエラーは出ませんが、ファイルダイアログを開けません。
「応答なし」の状態になってしまいます。
おかしなことにdialog.ShowHelp=true;
を指定するとダイアログを開けるのです。
どうすれば、「応答なし」の状態を避けることができますか?
C#
1using System; 2using System.Drawing; 3using System.Windows.Forms; 4using System.IO; 5using System.Text; 6 7namespace TestFileIO 8{ 9class Form1 : Form 10{ 11 12 public class WinMain : Form { 13 14 public static void Main() { 15 Application.EnableVisualStyles(); 16 Application.Run(new WinMain()); 17 } 18 public WinMain() { 19 this.Text = "タイトル"; 20 MainMenu mm = new MainMenu(); 21 MenuItem[] mi = { 22 new MenuItem("Save as ...(&A)" , new EventHandler(saveas)) , 23 }; 24 mm.MenuItems.Add("File(&F)" , mi); 25 Menu = mm; 26 } 27 28 private void saveas(object sender , System.EventArgs e) 29 { 30 SaveFileDialog dialog = new SaveFileDialog(); 31 //dialog.ShowHelp = true; を入力すると実行できる 32 dialog.Filter = "AllFiles | *.*"; 33 DialogResult rest = dialog.ShowDialog(); 34 if (rest == DialogResult.OK) 35 { 36 //省略 37 } 38 } 39 40 } 41} 42}
ちなみにコンパイルは以下のようにしました。
csc file.cs
※Google検索をしても出てきませんでした。
Visual Studio を使わない理由が何かあるのでしょうか?
重いのでなるべく使いたくないです。
やはり使わなきゃだめでしょうか。
なんかFormクラスが入れ子になっていたり、色々と作りがおかしい気がするので、一度プロジェクトの作成(Windowsフォームアプリケーション)からやり直してはどうでしょう。
> やはり使わなきゃだめでしょうか。
「重い」なんて理由で使わないのは問題外&ダメですね。「重い」以上の問題(質問者さんの時間と労力の無駄)が出ているのでは?
簡単なコンソールアプリ程度なら何とかなると思いますが、GUIアプリの場合は重いからという理由でVisualStudioを避けても、多分デバッグの困難さや開発効率の悪さで、それ以上に時間をロスしそうな気がしますが。
返信ありがとうございます。
>「重い」以上の問題(質問者さんの時間と労力の無駄)が出ているのでは?
> 多分デバッグの困難さや開発効率の悪さで、それ以上に時間をロスしそうな気がしますが。
そういわれるとたしかにそうかもしれません。
VisualStudioを使用したいと思います。
回答1件
あなたの回答
tips
プレビュー