我目前有兩種表單,一種用于在從列表框中選擇用戶時(shí)顯示信息(列表框列出名稱,選擇時(shí)它將填充我擁有的幾個(gè)文本框,一個(gè)用于城市,另一個(gè)用于地址),第二個(gè)表單允許我輸入用戶的信息,當(dāng)我單擊“提交”時(shí),這些信息將顯示在 form1 上的列表框中。目前,我可以將第二個(gè)表單中的用戶添加到第一個(gè)表單中的列表框中,但是每當(dāng)我在列表框中單擊他們的姓名時(shí),我都會(huì)在文本框中填寫他們的信息時(shí)遇到問(wèn)題。截至目前,我已經(jīng)嘗試實(shí)現(xiàn)不同的代碼片段,但作為初學(xué)者,我不確定如何執(zhí)行此操作。我的第一個(gè)表格如下 public Form1(){ InitializeComponent();}private void ButtonAddUser_Click(object sender, EventArgs e){ Form2 form = new Form2(textBoxFirstName.Text, listBoxUsers); form.Owner = this; form.ShowDialog(); form.Show();}private void listBoxUser_SelectedIndexChanged(object sender, EventArgs e){ if (listBoxUser.SelectedIndex != -1) { User selected = (User)listBoxUser.SelectedItem; textBoxStreet.Text = selected.Street; textBoxCity.Text = selected.City; }}我添加用戶信息的第二個(gè)表單如下public partial class Form2 : Form{ private ListBox _listBoxUsers; public Form(string value, ListBox listBoxUser) { InitializeComponent(); value=($"{textBoxFirstName.Text} {textBoxLastName.Text}"); _listBoxUsers = listBoxUsers; } private void ButtonSubmit_Click(object sender, EventArgs e) { _listBoxUsers.Items.Add($"{textBoxFirstName.Text} {textBoxLastName.Text}"); this.Close(); }}以及我試圖存儲(chǔ)文本框信息的班級(jí)public class User : EventArgs{ public string Street {get; set;} public string City {get;set;} public User(string street, string city) { Street = street; City = city; }}簡(jiǎn)而言之:我試圖將第二個(gè)表單中的信息保存到我的類中,當(dāng)我從列表框中選擇一個(gè)用戶時(shí),它將在文本框中顯示他的街道和城市(我的列表框和文本框都在我的第一個(gè)表單上。)。謝謝你的幫助
1 回答

元芳怎么了
TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊
在第二種形式中,您應(yīng)該創(chuàng)建 User 對(duì)象并填寫街道和城市等詳細(xì)信息。
private void ButtonSubmit_Click(object sender, EventArgs e)
{
User user = new User(textBoxFirstName.Text, textBoxLastName.Text);
_listBoxUsers.Items.Add(user);
this.Close();
}
由于 Listbox.Items 需要對(duì)象類型,因此您可以添加從 System.Object 派生的任何內(nèi)容。但在 form1 中,您創(chuàng)建了包含用戶對(duì)象的列表,并且在選定的索引更改期間,您將類型轉(zhuǎn)換為用戶對(duì)象。但在 form2 中,您在單擊提交按鈕期間并未實(shí)際插入 User 對(duì)象。
因此,我認(rèn)為您面臨這個(gè)問(wèn)題。嘗試使用上面的代碼并檢查
- 1 回答
- 0 關(guān)注
- 133 瀏覽
添加回答
舉報(bào)
0/150
提交
取消