2013-06-23 2 views
-1

У меня есть этот код, чтобы предотвратить дублирование в узлах treeView, но он не работает. Любая ошибка в моем коде?Как проверить дубликат узла treeView из базы данных C#, WinForms

 DataTable dt= new DataTable(); 
    OleDbDataAdapter sda= new OleDbDataAdapter("SELECT * FROM tblName", conn); 
    sdas.Fill(dt); 

for (int x = 0; x < dt.Rows.Count; x++) 
{   
    if (!treeView1.Nodes.ContainsKey(dt.Rows[x]["Name"].ToString())) 
      treeView1.Nodes.Add(dt.Rows[x]["Name"].ToString()); 
} 
+1

Выполните отчетливый в базе запроса –

+0

@MitchWheat в базе данных? как? – ViFer

+1

@ViFer: попробуйте google «SQL SELECT DISTINCT», в результатах поиска будет много интересного. – Dennis

ответ

0

Вам также необходимо указать параметр ключа.

if (!treeView1.Nodes.ContainsKey(dt.Rows[x]["Name"].ToString())) 
     treeView1.Nodes.Add(dt.Rows[x]["Name"].ToString(), dt.Rows[x]["Name"].ToString()); 

Вы использовали Add метод с одним параметром, который не установит свойство Имя (Name является ключом).

Add(string text)

Add(string key, string text)