私は c# プログラミングが初めてで、非常にシンプルに感じるかもしれません...追加、更新、削除、キャンセル、閉じるボタンのあるメニューバー(ツールストリップ)を使用しています...追加ボタンに....
private void btn_Add_Click(object sender, EventArgs e)
{
NewSavebtn();
}
public void NewSavebtn()
{
if (btn_Add.Text == "&New")
{
btn_Add.Text = "&Save";
btn_Edit.Enabled = false;
btn_Delete.Enabled = false;
txtDetailName.Enabled = true;
TxtHeadName.Enabled = true;
UnLock();
}
else if (btn_Add.Text == "&Save")
{
save_data();
Lock();
btn_Add.Text = "&Add";
btn_Edit.Enabled = true;
btn_Delete.Enabled = true;
ClearAll();
txtDetailName.Enabled = false;
}
else
MessageBox.Show("cant save data");
}
#region Clear Lock Unlock
public void ClearAll()
{
foreach (Control ctl in this.Controls)
{
if (ctl is TextBox || ctl is ComboBox)
{
ctl.Text = "";
}
}
}
public void Lock()
{
foreach (Control ctl in this.Controls)
{
if (ctl is TextBox || ctl is ComboBox)
{
ctl.Enabled=false ;
}
}
}
public void UnLock()
{
foreach (Control ctl in this.Controls)
{
if (ctl is TextBox || ctl is ComboBox)
{
ctl.Enabled=true ;
}
}
}
#endregion
ほぼ 200 以上のフォームに同じコードを追加したいと考えています。誰か私がそれのために何をすべきか教えてください。C#のasp.netのようなユーザーコントロールまたはマスターコントロールはありますか?これにより、共通コードを脇に置いて必要なときに呼び出すことができます... NewSavebtn()と他のメソッドを別のクラスに配置すると、class1と言って呼び出しようとするからですform1のように...
class1 c1 =new class1(this);
c1.NewSavebtn(this);
うまくいきません....よろしくお願いします....