C# 如何使用复选框节点填充树列表视图

C# 如何使用复选框节点填充树列表视图,c#,ado.net,C#,Ado.net,伙计们,我想通过循环使用数据库表(sql server)中的数据,用节点填充树列表视图,任何人都可以给出一些想法。我不知道从哪里开始编码。 我用这段代码获取数据并连接到数据库。树列表视图位于winform SqlConnection cn = new SqlConnection(); SqlCommand cmd4 = new SqlCommand(); con.OpenConnections(); cmd4.Connection = cn; cmd4.CommandType = Command

伙计们,我想通过循环使用数据库表(sql server)中的数据,用节点填充树列表视图,任何人都可以给出一些想法。我不知道从哪里开始编码。 我用这段代码获取数据并连接到数据库。树列表视图位于winform

SqlConnection cn = new SqlConnection();
SqlCommand cmd4 = new SqlCommand();
con.OpenConnections();
cmd4.Connection = cn;
cmd4.CommandType = CommandType.Text;
cn.ConnectionString = con.connections1;
cmd4.CommandText = "Select cmodname from modules";

不知道下一步该用什么。读卡器还是数据表?

应该是这样的:

您需要检查空值和不希望出现的内容

private void FillTreeView(string connectionString)
{
    string query = "Select cmodname from modules;";
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(query, connection);
        connection.Open();
        SqlDataReader sqlReader = command.ExecuteReader();
        try
        {
            while (sqlReader.Read())
            {
                     if (treeView2.SelectedNode != null)
                     {
                         treeView2.SelectedNode.Nodes.Add(sqlReader[0]);
                         treeView2.ExpandAll();
                     }
                     else
                     {
                         treeView2.Nodes[0].Nodes.Add(sqlReader[0]);
                     }

          }
        }
        catch (Exception ex)
        {
            MessageBox.Show("An error occurred: " + ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
        }
        finally
        {
            sqlReader.Close();
        }
    }
}

我正在尝试用数据库中的节点填充treelistview…如果选择了元素,则会更改为添加子元素。我建议使用块将
SqlCommand
SqlDataReader
放入