アプリ版:「スタンプのみでお礼する」機能のリリースについて

C#でプロジェクトを作成したら、Form1.CSとDesigner.csとProgram.csの3つができていました。

ネットで調べるとDesigner.csを使う機会はあまりないとなっていますが、サイトによってはForm1.csに主に記述するとか、Program.csに主に記述するとなっています。

調べた感じではForm1.csに記述されている方が圧倒的に多いようなのでForm1.csに書いていますが、するとこのProgram1.csとは何者なのでしょうか?

A 回答 (2件)

Program1.cs


 エントリポイント
 出来上がったプログラムは、ここに記されているコードから実行されます。
 プロジェクトのプロパティにある『スタートアップオブジェクト』を
 設定していない場合、ここの中のstatic void Main()が真っ先に走行します。
 そして、そのメソッド内に、Application.Run(new Form1());と記述
 されていることで、Form1を呼び出しています。
 
 間違っても、初めてプロジェクトを作成したからと言って、Form1が
 呼び出されているわけではありません。
 逆に言うと、初期表示したいフォームを変更したいならば、ここの
 内容を変更しますし、フォームが閉じられた後に何か処理を要する
 時でもこのファイルに追記してコードすることがあります。

Designer.cs
 フォームなどを作成した時に、関連づけられているソースコードです。
 分かりやすいところでいうと、フォームでボタンを貼りつけたり、
 ラベルの文字や背景色を変えたりした情報が、すべてこのファイルで
 設定されます。

Form1.cs
 実際に求める動作を記述するファイルです。
 ボタンを押したらラベルに「Hello World」の文字を表示するとか。
    • good
    • 2

>するとこのProgram1.csとは何者なのでしょうか?



プログラムのエントリポイントから、Form1のインスタンスを生成して呼び出す。
ということをやっています。

Designer.csはフォームデザイナで設定した内容が記述されているので、基本的に触ることはありません。
# 妙に触るとデザイナが正しく動作しないとか、書き換えた内容がデザイナによって上書きされて消える。とか発生します。
# コントロールの順番を変える為にVisual Studio終了してから書き換えたことはありますが。

Program1.csは先に回答した通り。
Form1.csはForm1のイベントハンドラやらいろいろと書き込むことになります。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A