2011-04-28 119 views
0

我想將我的app.config文件中的ConnectionStringsSettingsCollection綁定到我的WinForms應用程序中的ListBox。出於某種原因,我似乎無法通過下面的方法去做:將.NET WinForms列表框綁定到ConnectionStringSettingsCollection

lstMyListBox.DataSource = GetConnectionStrings() 
lstMyListBox.DisplayMember = "Name" 

我能夠通過循環收集和添加每個ConnectionStringSetting到lstMyListBox.Items做到這一點:

For Each settings As ConnectionStringSettings In GetConnectionStrings() 
    lstMyListBox.Items.Add(settings) 
Next 
lstMyListBox.DisplayMember = "Name" 

只要修改集合中已有的各個項目,它就可以工作,但如果從ListBox中刪除某些從基礎集合中刪除的項目,我希望這樣做。有什麼我可以做的不同,這將允許我直接綁定到ConnectionStringSettingsCollection列表框?

回答

1

ConnectionStringsSettingsCollection沒有執行IListIListSource,所以它不能用作DataSource。相反,你可以綁定的ConnectionStringSettings列表:

lstMyListBox.DataSource = GetConnectionStrings().Cast(Of ConnectionStringSettings).ToList() 
lstMyListBox.DisplayMember = "Name" 

然而DisplayMember似乎沒有考慮到,至少不是所有的項目......但如果你用「的ConnectionString」爲它工作正常DisplayMember。不知道爲什麼...