メインウィンドウの中央にあるボタンだけを備えた小さなWinFormsアプリケーションがあります。ボタンのテキストはボタン1です。 InitializeComponentの呼び出し後に、コードビハインド(F7)のコンストラクタがボタンのテキストをHello Worldに変更します。WinForms DesignerはCodeBehindのメソッドを実行する必要がありますか?
ランタイムには「Hello World」と表示されますが、設計時にはデザイナーに「ボタン1」が表示されます。カスタムUIコードを実行するWinFormsの正しい方法は何ですか?デザイナーファイルにそのコードを手動で入れると、次にデザイナーが保存されたときに変更が無効になります。ここで
は私のコードです:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.button1.Text = "Hello World";
}
}
実行時と同じになるように、ボタンのテキストをプロパティウィンドウから変更することができます。 –
フォームデザイナ( 'Form1.designer.cs')を入力して、コントロールのプロパティを手動で編集することもできます。 –
'Form1'のconstrは、アプリケーションを起動した後にのみ実行されます。これが意図です。しかし、すべてのオブジェクトと要素を初期化した後ですぐに 'Text'を設定すると、デザイナークラスの' Text'をすでに設定することができます。ちなみに*コードはありません*、このクラスとデザイナークラスは 'partial'クラスなので、両方とも一つのクラス(Form1)を構成しますが、Form1のデザインはOutsourcedデザイナークラスを使用してコードを簡素化し、理解を深め、より明確な概要を表示します。 –