如何显示所有的数据结果listview

本文关键字:数据 结果 listview 何显示 显示 | 更新日期: 2023-09-27 17:50:00

我有一个代码在这里显示数据从sqldatabase到listview时搜索。

 int flag = 0;
        connectionstatus();
        SqlCommand cmd = new SqlCommand("SELECT *FROM SampleDatabase WHERE IdNo=@IdNo", conn);
        cmd.Parameters.Add("@IdNo", SqlDbType.VarChar).Value = txtIdNo.Text;
        SqlDataReader objRead = cmd.ExecuteReader();
        lvlist.Items.Clear();
        while (objRead.Read())
        {
            if ((txtIdNo.Text) == (objRead["IdNo"].ToString()))
            {
                flag = 1;
                break;
            }
        }
        if (flag == 1)
        {
            ListViewItem list = new ListViewItem(basa["FID"].ToString());
            list.SubItems.Add(objRead["FullName"].ToString());
            list.SubItems.Add(objRead["Age"].ToString());
            list.SubItems.Add(objRead["Gender"].ToString());
            list.SubItems.Add(objRead["Relationship"].ToString());
            list.SubItems.Add(objRead["SkillnOccupation"].ToString());
            lvlist.Items.AddRange(new ListViewItem[] { list });
        }

我的问题是,当我搜索和数据库具有相同的IdNo数据时,它只显示1个结果。我怎样才能显示所有具有相同IdNo的结果?你们能帮我一下吗。

如何显示所有的数据结果listview

将条目填充代码放入循环中:

    while (objRead.Read())
    {
        ListViewItem list = new ListViewItem(basa["FID"].ToString());
        list.SubItems.Add(objRead["FullName"].ToString());
        list.SubItems.Add(objRead["Age"].ToString());
        list.SubItems.Add(objRead["Gender"].ToString());
        list.SubItems.Add(objRead["Relationship"].ToString());
        list.SubItems.Add(objRead["SkillnOccupation"].ToString());
        lvlist.Items.Add(list);
    }

将最后一行替换为以下内容。似乎你为每个项目做了两个listviewitem ?看看是否有帮助,然后看看这里。

添加项到Listview控件

lvlist.Items.Add(list);