我在.NET C#WINFORMS下学习开发
我有将教师添加到数据库的形式。
现在我需要制作一个表格来编辑老师。
为此目的创建不同的表单是正常的吗?因为它具有相同的控件,所以可能只是调用添加教师的相同形式,但是将数据加载到控件,并将按钮从ADD更改为SAVE?
在web developpement(php)中,我使用相同的表单来编辑/添加数据,因为处理这种行为并不太难。但我不确定这种做法是不是很好的窗体编程。
这里添加的形式。如果我再次使用这个表格进行编辑,恐怕以后很难维护这段代码。
TNX。
答案 0 :(得分:2)
imo是的,你应该重复使用相同的形式......长期维护的代码少
编辑:因为imp0ssible说如果它是主要形式
,这是不可能的只需制作2个构造函数,以便您知道是否要添加或编辑教师
答案 1 :(得分:2)
这种形式是主要形式吗? 如果不是,您可以为此表单(添加,编辑,...)调用不同的构造函数
答案 2 :(得分:1)
我通常会使用相同的表单来解决这个问题。为清楚起见,我不会重新标记按钮,而是使用不同的标题和/或其他清晰的标题来指示用户是在添加还是更新。
答案 3 :(得分:0)
Reproduktor rep;
public Edit(Reproduktor rep)
{
InitializeComponent();
this.rep = rep;
comboBox1.SelectedIndex = comboBox1.FindStringExact(rep.typSoustavy);
if (comboBox1.SelectedIndex == 0)
{
txtFl.Text = (rep as Reproduktor).fl.ToString(); //+fr
}
else if(comboBox1.SelectedIndex ==1)
{
txtSub.text blablabla
}
else if(comboBox1 ==2)
{ }
textBox1.Text = rep.vyrobce;
textBox2.Text = rep.nazev;
//cena.tostring
comboBox1.SelectedIndex = comboBox1.FindStringExact(rep.bluethoot);
}
private void buttonStorno_Click(object sender, EventArgs e)
{
DialogResult = DialogResult.Cancel;
this.Close();
}
答案 4 :(得分:0)
另一个构造函数可以工作,这样您可以根据需要知道要启用或禁用的控件,这是最简单的方法,并且您将重复使用相同的表单/代码。