[英]How to display selected data in Listbox and display in Textbox?
我有兩種形式-一種是主表單,其中有一個列表框,其中包含從文本文件中加載的數據。 另一種是交貨形式。 當用戶在列表框中選擇一個項目並單擊“編輯”按鈕時,將出現交貨表單,所選數據將顯示在交貨表單的文本框中。 目前,我有這樣的事情:
private Visit theVisit = new Visit();
private List<Delivery> deliveries = new List<Delivery>();
private FrmDelivery deliveryForm = new FrmDelivery();
private void updateDelivery()
{
lstDeliveries.Items.Clear();
List<String> listOfD = theVisit.listDeliveries();
lstDeliveries.Items.AddRange(listOfD.ToArray());
}
private void btnEditDelivery_Click(object sender, EventArgs e)
{
deliveryForm.ShowDialog();
updateDelivery();
}
表單是一個與其他類一樣的類:您可以添加屬性,也可以設置訪問器。
使用傳遞表單上的屬性,該屬性在更改時會填充文本框。
您現在要做的就是從主表單中設置此值並顯示交貨表單。
交付形式:
class FrmDelivery: Form
{
TextBox text1; // Initialize this as usual
public string DisplayText
{
get { return text1.Text; }
set { text1.Text = Value; }
}
}
主要形式:
private void btnEditDelivery_Click(object sender, EventArgs e)
{
FrmDelivery frm = new FrmDelivery();
frm.DisplayText = "Whatever Value you want";
frm.ShowDialog();
}
您也可以將text1聲明為public,但是我不希望獲得超出所需的控制權。 始終選擇最嚴格的方法。
有幾種方法可以執行此操作,一種是可以使用靜態字段將列表框的selecteditem的值傳遞到“傳遞”表單
像這樣 :
form1(在listbox的selectedindexchanged事件中):
public static string listboxselecteditem=listbox1.selecteditem;//here you add selected item of listbox
然后以“交付形式”執行:
textbox1.Text=form1.listboxselecteditem;//add value of selected item in listbox to textbox in Delivery form
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.