我已經設置了一個2表單載入一個datagridview,並且用戶單擊視圖以選擇他們想要的值。我可以在datagridview的同一窗體中獲得顯示在消息框內的值但是,當我嘗試將它傳遞給另一個窗體時,它顯示爲NULL。我將如何讓它顯示在文本框內。這是我的代碼。當我調試代碼時,它首先正確傳遞值,但是當它完成運行時,它顯示爲空值。我已經嘗試了很多不同的方法來做到這一點,試圖在不同的類上使用公共變量。將字符串從datagridview傳遞到另一種形式的文本框
與文本框
public void FillTextBoxes(object sender, EventArgs e, string SupplierID)
{
supplierVO _SupplierVo = new supplierVO();
ListOfSuppliers _ListOfSuppliers = new ListOfSuppliers();
SupplierID = _ListOfSuppliers.SupplierCode;
MessageBox.Show(SupplierID);
txtSupplierCode.Text = SupplierID;
}
窗體2與DataGridView的
// Links to the user double click of the datagrid
public void SelectGridInformation (object sender, EventArgs e)
{
ChangeSupplierInfo _ChangeSupplerInfo = new ChangeSupplierInfo();
supplierVO _SupplierVO = new supplierVO();
Int32 selectedRowCount = dataGridView1.Rows.GetRowCount(DataGridViewElementStates.Selected);
string SelectedSupplierID = dataGridView1.SelectedCells[0].Value.ToString();
SupplierCode = SelectedSupplierID;
_SupplierVO.SupplierCode = SelectedSupplierID;
_ChangeSupplerInfo.FillTextBoxes(sender, e, SelectedSupplierID);
this.Close();
}
我一直在試圖用get和set屬性的在這裏做這一個表是該代碼示例。
public string SupplierCode
{
get
{
return _SupplierCode;
}
set
{
_SupplierCode = value;
}
}
我的猜測是,你想用你的'ListOfSuppliers'類的現有實例,而不是創建的例如。 – PhoenixReborn
最好的方法是通過使用某種消息傳遞實現來分離功能,然後使用發佈者/訂戶模型。 –
你在代碼中放置了'FillTextBoxes'函數? – Fabio