C# 根据选定的列表框项仅加载DataGridView一次
我正在使用Visual Studio 2017开发WinForm应用程序。 我创建了一个列表框,如下所示。 当我第一次单击“水果”时,将显示以下dataGridview i、 e每当我按下“水果”键时,我都会得到上面的数据网格。蔬菜也有类似的对应值。但问题是,当我再次单击“水果”时,值会被添加。我再次得到相同的值,而不是仅仅保留它。这是我的密码C# 根据选定的列表框项仅加载DataGridView一次,c#,datagridview,visual-studio-2017,C#,Datagridview,Visual Studio 2017,我正在使用Visual Studio 2017开发WinForm应用程序。 我创建了一个列表框,如下所示。 当我第一次单击“水果”时,将显示以下dataGridview i、 e每当我按下“水果”键时,我都会得到上面的数据网格。蔬菜也有类似的对应值。但问题是,当我再次单击“水果”时,值会被添加。我再次得到相同的值,而不是仅仅保留它。这是我的密码 public Form1() { FruitList.Add("Mango"); Frui
public Form1()
{
FruitList.Add("Mango");
FruitList.Add("Apple");
InitializeComponent();
}
private void listBox2_SelectedIndexChanged(object sender, EventArgs e)
{
string a = listBox2.SelectedItem.ToString();
if (a == "Fruits")
{
toolStripStatusLabel1.Text = a;
dataGridView2.Columns.Add("key", "Fruit");
dataGridView2.Columns.Add("value", "Name");
foreach (var var in FruitList)
{
dataGridView2.Rows.Add("Fruit", var);
}
}
}
当我选择“蔬菜”时,只有与之相关的值才会出现在dataGridview中。但当我点击列表框中的项目时,我会把所有的东西都添加进去
如何只加载一次dataGridView值。
我对VisualStudio和C完全陌生,只是在探索它的各种特性。如果有人能帮忙就好了。提前谢谢
根据er shoaib在添加后的回答
dataGridView2.Rows.Clear();
在线上
string a = listBox2.SelectedItem.ToString();
string a = listBox2.SelectedItem.ToString();
我把里面的东西重新装好
这很好,除非我不删除或做任何更改。如果我使用按钮控件删除一个选定的行,比如说Mango行,当我再次按下列表中的水果项目时,这些项目将从一开始加载。如何在整个应用程序中保留更改。直到我关上表格。有什么帮助吗 在for循环之前,清除数据网格,然后启动for循环并添加项
datagrid2.rows.clear().
单击列表框中的项时,需要先清除所有行,然后才能将新行填充到数据网格视图 添加这一行
dataGridView2.Rows.Clear();
在线上
string a = listBox2.SelectedItem.ToString();
string a = listBox2.SelectedItem.ToString();
添加此行dataGridView2.Rows.Clear;在该行上方的字符串a=listBox2.SelectedItem.ToString;并让我知道。这是好的,除非我不删除或作出任何更改。如果我使用按钮控件删除一个选定的行,比如说Mango行,当我再次按下列表中的水果项目时,这些项目将从一开始加载。如何在整个应用程序中保留更改。比如直到我关闭表单。意思是如果你删除芒果,那么它也可以从水果列表中删除,所以下次当你在列表框中选择水果时,你只会得到苹果?是的,这是可能的。通过删除列表值,我可以做到这一点。但是,通过使用dataGridView或WINForm功能或任何其他黑客,这是可能的吗?您必须根据需要实现逻辑并开发自定义控件。