0

データベーステーブル(SQLサーバー)のデータを使用してツリーリストビューにノードを設定したいのですが、ループすることで誰でもアイデアを得ることができます。どこからコーディングを開始すればよいかわかりません。このコードを使用してデータを取得し、データベースに接続します。ツリーリストビューは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";

次に何を使うべきかわかりません。リーダーまたはデータテーブル?

4

1 に答える 1

1

次のようになります。

null や表示したくないものをチェックする必要があります。

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();
        }
    }
}
于 2012-12-17T05:53:32.243 に答える