將文本框的內容從窗體傳遞到另一個窗體。通過構造函數傳遞值
我已經被告知無數次該怎麼做,我嘗試了它,但我失敗了。 我似乎通過了罰款,但Mailer.cs
形式以某種方式失去了剛剛收到的東西。
下面是我的ContactList.cs
的代碼,它應該將SelectedTo.Text
發送到Mailer.cs
MailTo.Text
控件。
這只是一段代碼,只需要顯示問題區域。
public partial class ContactList : Form
{
public Contact Contact { get; set; }
public Mailer mailerOwner;
public ContactList(Mailer mailerOwner)
{
InitializeComponent();
this.Load += ContactList_Load;
this.mailerOwner = mailerOwner;
ConfigureGrid();
}
這裏是發送到Mailer.cs
private void OkAdd_Click(object sender, EventArgs e)
{
Mailer mailer = new Mailer(SelectedTo.Text);
this.Close();
}
現在,這裏從Mailer.cs
public Mailer(string contactlist)
{
InitializeComponent();
MailTo.Text = contactlist;
}
初始化呼叫我在做什麼錯誤的方法? :|
你能更具體地瞭解*什麼*不工作?乍一看你的代碼看起來很好。 – BradleyDotNET 2014-10-06 19:47:05
您的ContactList類中有一個Mailer對象,但是您在Click處理程序中使用該文本創建了一個新實例。那真的是你想要做的嗎? – helrich 2014-10-06 19:47:51
您並未更新您認爲自己的表格。在你的點擊事件中,你正在創建一個_new_表單並更新它,然後把它扔掉。 mailerOwner是你希望更新的表單嗎?在你的'OKAdd_Click'方法中,只需使用'mailerOwner.MailTo.Text = SelectedTo.Text'。這假定MailTo文本框是公開的。 – 2014-10-06 20:19:10