0
我目前正在嘗試編寫編目程序。目前,我的目標是讓「添加」按鈕按需工作。我的代碼:將子節點添加到樹查看
private void populatingTreeView()
{
SqlCeCommand query = new SqlCeCommand("SELECT * FROM cars ORDER BY model", con);
SqlCeDataReader dr = query.ExecuteReader();
while (dr.Read())
{
TreeNode[] brandNode = treeView1.Nodes.Find(dr["brand"].ToString(), false);
if (!brandNode.Any())
{
brandNode = new TreeNode[]
{
treeView1.Nodes.Add(dr["brand"].ToString(),dr["brand"].ToString())
};
platformNode[0].Nodes.Add(dr["brand"].ToString(), dr["model"].ToString());
}
else
{
platformNode[0].Nodes.Add(dr["brand"].ToString(), dr["model"].ToString());
}
}
}
它的工作原理。幾乎。在begginging我的TreeView看起來像這樣
然後,按下後, 「添加」 按鈕,每個子節點重複本身,但reciently加入(E90上的這張照片)
我修改了我的方法,我明白了。但在重新啓動該程序後一切正在恢復正常
我的「添加」按鈕方法
private void button1_Click(object sender, EventArgs e)
{
SqlCeCommand com = new SqlCeCommand("INSERT INTO cars(model,brand) VALUES (@model,@brand)", con);
com.Parameters.AddWithValue("@model", textBox1.Text);
com.Parameters.Add("@brand", comboBox3.Text);
try
{
int affectedRows = com.ExecuteNonQuery();
if (affectedRows == 0)
{
MessageBox.Show("Please, fill all the fields!");
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}