讓我先說這個,說我不做非常多的winforms工作,所以請原諒我的無知。來自ASP的綁定有點奇怪。以編程方式綁定ComboBox(s)通過控制名稱
我想循環一系列的組合框,並使用控制名稱和相應的存儲過程字典綁定它們。這是我想要做的一個簡化的例子。
public Dictionary<string, string> GetDropDownSchema()
{
return new Dictionary<string, string> { {"ddClient", "guisp_SelectClientDropDown"}, {"ddType", "guisp_SelectTypeDropDown"}, {"ddCounty", "guisp_SelectCountyDropDown"}};
}
public void BindComboBoxes()
{
var ddSchem = GetDropDownSchema();
foreach (var dd in ddSchem) {
var dt = new DataTable();
using (var con = new SqlConnection(ConStr)) {
try {
var adapter = new SqlDataAdapter(dd.Value, con);
adapter.Fill(dt);
((ComboBox)Controls.Find(dd.Key, true)[0]).DataSource = dt;
((ComboBox)Controls.Find(dd.Key, true)[0]).DisplayMember = "DisplayText";
((ComboBox)Controls.Find(dd.Key, true)[0]).ValueMember = "ID";
}
catch //(Exception ex)
{
//Code is not throwing any exception, just doesn't work
}
}
}
我敢肯定我錯過了一些簡單的事情。我感謝任何幫助或建議,以更優雅的方式來解決這個問題。
謝謝
@Steve的SelectCommand屬性遺憾的是是一個錯字,我試圖簡化代碼對於這個問題 –