我正在尝试通过使用按钮和for循环以不同的形式添加到列表框,但是它说“衣服”不包含列表框的定义,我将列表框设置为public,因为那是我在网上找到了,但还没有解决问题。就像我无法识别它一样,即使我输入Clothes dot并且在下拉菜单上也没有。我也尝试过F.CustomersList
,但这也行不通。
private void LoadCity_Click(object sender, EventArgs e)
{
Form F = new Clothes();
if (F.ShowDialog() == DialogResult.OK)
{
for (int i = 0; i < _Mexico.Count; i++)
{
Clothes.CustomersList.Items.Add(_Mexico.ElementAt(i));
}
}
}
答案 0 :(得分:0)
为此,您必须在Click_Event中创建一个列表,并将其设置为另一个表单的CustomersList属性。
private Form custForm;
private void LoadCity_Click(object sender, EventArgs e)
{
if(custForm == null)
{
custform = new Clothes(); //Clothes should be a Form
}
List cust = new List();
for(int i = 0; i < _Mexico.Count; i++)
{
cust.add(_Mexico.ElementAt(i);
}
custform.CustomersList = cust;
}
该属性应如下所示:
private List _CustomersList;
public List CustomersList
{
get
{
return _CustomersList;
}
set
{
_CustomersList = value;
//then do your stuff here
}
}
答案 1 :(得分:0)
除了在用列表关闭表单后将所有内容放入列表之外,还必须从
更改表单的初始化Form F = new Clothes()
到
Clothes F = new Clothes()
因为System.Windows.Forms.Form不包含您的公共列表。然后,您可以通过
访问列表框F.CustomersList.Items.Add(_Mexico.ElementAt(i))
只是看到Rufus在他的评论中已经提到过,也许您不得不考虑一下您的设计。