[英]Updating list view items
我正在更新SQL Server数据库中的一些数据,然后将这些数据显示在列表框中。 它正在更新数据,但显示重复的条目(旧的和新的条目),除非我重新启动Windows窗体。 有人知道如何在按钮单击事件上刷新它吗? 刷新功能或更新功能均无效
private void button2_Click(object sender, EventArgs e)
{
SqlDataReader dr;
try
{
SqlCommand cmd = new SqlCommand("select prod, eng from comp", cn);
cn.Open();
dr = cmd.ExecuteReader();
while (dr.Read())
{
listBox1.Items.Add((String)dr["prod"] + "\t\t" + (string)dr["eng"]);
}
cn.Close();
listBox1.Refresh();
}
如果要重绘列表框,请尝试以下操作:
listBox1.Invalidate();
这将重新绘制您的控件。
尝试:
listBox1.Items.Clear();
如果只希望新项目显示在列表框中 , 则在写入数据库读取项目之前,如下所示:
private void button2_Click(object sender, EventArgs e)
{
SqlDataReader dr;
try
{
SqlCommand cmd = new SqlCommand("select prod, eng from comp", cn);
cn.Open();
dr = cmd.ExecuteReader();
listBox1.Items.Clear();
while (dr.Read())
{
listBox1.Items.Add((String)dr["prod"] + "\t\t" + (string)dr["eng"]);
}
cn.Close();
listBox1.Invalidate();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.