即使您在調用formA時有相同的文本框,但您只是更改了formA的實例,這意味着只有formA中的文本框發生了更改。
你必須明白,每個類都有自己的實例與另一個分開。
這並不意味着你不能訪問formA中的formB文本框。我可以看到你想鞏固;如果我沒有記錯你在備考方法已經是這樣的:
public void methodA(Customer customer)
{
textboxName = customer.Name;
textboxAddress = customer.Address;
}
如果你不想重複這個那時,我能想到的另一種方法是:
1)創建所有重複屬性的接口。
public interface ICustomerForm
{
string Name {get; set;}
string Address {get; set;}
}
2.)有2種形式的接口。
public class FormA : Form, ICustomerForm
{
public string Name
{
get
{
return _textBoxName.Text;
}
set
{
_textBoxName.Text = value;
}
}
}
執行相同的formB
3)創建一個靜態輔助類,你只通過客戶類。 e.g:
public static class FormHelper
{
public static UpdateCustomerInfo(ICustomerForm form, Customer customer)
{
form.Name = customer.Name;
form.Address = customer.Address;
}
}
4)在您的兩種形式只是叫助手類和傳遞它本身作爲第一個參數和客戶類作爲第二個參數。 //形式A中的方法 public void formA() { FormHelper.UpdateCustomerInfo(this,customer); }
//Method in formB
public void formB()
{
FormHelper.UpdateCustomerInfo(this, customer);
}
這樣,你只需要在你的形式的一行代碼和信息的設置是對綜合輔助類。
來自'表格A'的方法在'表格B'中不起作用,因爲'controls'在兩種表格中都不相同。在你的問題中加入一些代碼,這可能會幫助我們爲相同的邏輯創建通用方法。 –