|
> 大まかにやらないと行けないことを述べると以下のことになります。
>
> ・チェックボックスの状態を Settings に保存するようにする。
> ・設定がアプリケーション再起動でも保持されるように、Settings.Default.Save をフォームを閉じられるとき(Form1 の OnFormClosed)か、Program クラスの Run メソッドの末尾に書く。
> ・次回起動時、Settings.Default のプロパティを確認して、true だったらフォームのサイズを変える。
おっしゃられた通りに順番に解いていったら出来ました。ありがとうございました。
「Form1」
namespace WindowsFormsApp5
{
public partial class Form1 : Form
{
public bool SizeSetting { get; set; }
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
if (Properties.Settings.Default.SizeSetting == true)
{
this.Size = new Size(400, 350);
return;
}
else
{
this.Size = new Size(400, 250);
return;
}
}
private void Form1_Closing(object sender, FormClosingEventArgs e)
{
Properties.Settings.Default.SizeSetting = SizeSetting;
Properties.Settings.Default.Save();
}
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2(this);
form2.Show();
}
}
}
「Form2」
namespace WindowsFormsApp5
{
public partial class Form2 : Form
{
private Form1 Form1Instance;
private bool Checked;
public Form2(Form1 Form1Instance)
{
InitializeComponent();
this.Form1Instance = Form1Instance;
}
private void button1_Click(object sender, EventArgs e)
{
Close();
}
private void Form2_Load(object sender, EventArgs e)
{
this.checkBox1.Checked = Properties.Settings.Default.SizeSetting;
}
private void Form2_Closing(object sender, FormClosingEventArgs e)
{
Properties.Settings.Default.SizeSetting = this.checkBox1.Checked;
Properties.Settings.Default.Save();
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
Checked = checkBox1.Checked;
if (checkBox1.Checked == true)
{
Form1Instance.Size = new Size(400, 350);
return;
}
Form1Instance.Size = new Size(400, 250);
}
}
}
|