我試圖找到一個方法,但我似乎無法得到任何工作。我有一個窗體,它有一個按鈕,打開第二個窗體,上面有一個列表框,裏面充滿了那個屏幕上的項目。然後我將所有這些項目放入列表中。這些項目,一旦在form1上,將再次放入列表框中。從另一個表單獲取列表框或列表的內容?
我遇到的問題是,我不能爲我的生活弄清楚如何訪問列表框或列表中的元素,我需要從主窗體訪問它,否則我什麼也做不了其他。
public partial class product_list : Form
{
public List<string> ProductList { get; private set; }
public product_list()
{
InitializeComponent();
ProductList = new List<string>();
}
public void btnAdd_Click(object sender, EventArgs e)
{
string selectedItem = (string)listBox1.SelectedItem;
listBox2.Items.Add(selectedItem);
ProductList.Add(selectedItem);
}
public void btnRemove_Click(object sender, EventArgs e)
{
string selectedItem = (string)listBox2.SelectedItem;
listBox2.Items.Remove(selectedItem);
ProductList.Remove(selectedItem);
}
public void btnClose_Click(object sender, EventArgs e)
{
this.Close();
}
}
這是我的第二個形式。這下面這裏是我的主要形式的代碼到目前爲止
public partial class Form1 : Form
{
Form productSelect = new product_list();
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
Register.Visible = true;
}
private void btnService_Click(object sender, EventArgs e)
{
}
private void btnProduct_Click(object sender, EventArgs e)
{
productSelect.ShowDialog();
var itemsFromSecondForm = productSelect.ProductList;
}
}
正如你所看到的,我不是很遙遠,但這個一直抱着我一會兒。
任何人都有一種方法,我可以用來獲取列表框中的所有元素或form1中的列表本身?
編輯:更新我的代碼,我現在擁有。仍然收到錯誤
錯誤1'System.Windows.Forms.Form'不包含'ProductList'的定義,也沒有接受'System.Windows.Forms.Form'類型的第一個參數的擴展方法'ProductList'可以找到(您是否缺少使用指令或裝配參考?)
^h你是否通過代碼...?還有什麼是名單是私人,公共,靜態..?我認爲默認情況下,如果您沒有明確聲明列表類型爲「public」,那麼它默認爲私有 – MethodMan 2014-12-03 20:01:06