刷新窗体以更新新条目并将其保存在Visual Studio/C#的组合框中
本文关键字:Studio Visual 组合 存在 保存 更新 窗体 新条目 刷新 | 更新日期: 2023-09-27 18:33:20
我已经设置了我的程序,以便用户可以通过单独表单(弹出表单)上的文本框在组合框中输入新行。到目前为止,程序允许新条目并在用户按下"接受"按钮时关闭弹出表单,但该条目不会出现在组合框中,并且该条目未保存。
目前,查看新条目的唯一方法是通过 .显示对话框();函数,打开第一个窗体的第二个实例。
表格 2
namespace RRAS
{
public partial class NewRFRPopup : Form
{
public NewRFRPopup()
{
InitializeComponent();
}
private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
}
private void btnAccept_Click(object sender, EventArgs e)
{
formRRAS main = new formRRAS();
string newRFR = txtNewRFR.Text;
main.AddRFR(newRFR);
this.Close();
main.ShowDialog();
}
private void NewRFRPopup_Load(object sender, EventArgs e)
{
}
}
}
表格 1 中的添加RFR
public void AddRFR(object item)
{
cmbRFR.Items.Add(item);
}
您将
在接受处理程序中创建 form1 的新实例:
formRRAS main = new formRRAS();
(这就是为什么当你调用showdialog时,你会得到另一个formRRAS出现)。
您需要将原始 formRRAS 传递给弹出窗口,并在传递的实例上调用 AddRFR。 我会将其传递给弹出窗口的构造函数 - 即
public partial class NewRFRPopup : Form
{
formRRAS _main;
public NewRFRPopup(formRRAS main)
{
InitializeComponent();
_main = main;
}
然后在接受处理程序中:
string newRFR = txtNewRFR.Text;
_main.AddRFR(newRFR);
this.Close();
当然,还要显示表单RRAS的弹出窗口
NewRFRPopup popup = new NewRFRPopup (this);
popup.ShowDialog();