所以我有一个InvCert表格 我打开一个表格GetSomeInfo的实例 在GetSomeInfo中,我有文本框等,希望这些.Text值成为原始形式InvCert的值。我假设Form.stringname =可以允许我执行此操作,但是我的值并未与原始表单交叉。我在同一时间没有任何错误消息。
'frmInvCert.certType = comboInvLvl.Text;
frmInvCert.thisYear = dateTimeCurrent.Text;
frmInvCert.myFileName = txtInvestor.Text;
frmInvCert.getAdress = txtAddress.Text;
string certType = comboInvLvl.Text;
new frmInvCert().Show();
this.Close();`
然后,使这些值在方法中使用。但是程序不会等到我们返回原始表单来填写这些值。它只是创建空白。
this.Hide();
new frmGetSomeInfo().Show();
//creates even if values not filled!
//May need to retun to original instead somehow or find out how to put these mthods into the new form
//initialize checkboxes after with paths connected
//initialize tab pages with paths connected
if(thisYear != null && certType != null && myFileName != null)
{
CreateCertificate();
}
CreateCertificate();
答案 0 :(得分:0)
在此行:
new frmInvCert().Show();
您正在使用一个新实例,而不是您已设置值的实例。像这样更改它:
frmInvCert frm = new frmInvCert();
frm.certType = comboInvLvl.Text;
frm.thisYear = dateTimeCurrent.Text;
frm.myFileName = txtInvestor.Text;
frm.getAdress = txtAddress.Text;
frm.Show();
答案 1 :(得分:0)
您正在创建frmInvCert的新实例。改为这样:
new frmInvCert form = new frmInvCert();
form.certType = comboInvLvl.Text;
form.thisYear = dateTimeCurrent.Text;
form.myFileName = txtInvestor.Text;
form.getAdress = txtAddress.Text;
string certType = comboInvLvl.Text;
form.Show();
this.Close();