【发布时间】:2014-11-11 16:55:03
【问题描述】:
目标: 当我的表单加载时,我正在执行一个数据库调用,它返回给我一个我想作为 KeyValuePair(string,string) 作为数据源分配给组合框的 DataTable .显示成员是键(RailCarID),值成员是值(RailcarTransaction_Guid)(我将其存储为字符串)。
我遇到的问题是,当我执行 combobox.SelectedValue...它返回给我的是一个对象而不是一个字符串。谁能建议我在这里做错了什么?
我最初使用的是字典(它会出错),通过搜索解决我的问题最终使用了 BindingList。现在我的应用程序上的组合框在显示器中显示对象数组。下面是一些代码sn-ps:
private void GetAllTransactions()
{
BindingList<KeyValuePair<string, string>> Transactions = new BindingList<KeyValuePair<string, string>>();
string sql = "SELECT * FROM RailcarTransaction WHERE IsComplete = 'True' AND IsUploaded = 'False'";
DataTable transactions = session1.GetRecords(sql);
for (int i = 0; i < transactions.Rows.Count; i++)
{
Transactions.Add(new KeyValuePair<string, string>(transactions.Rows[i]["RailCarID"].ToString(), transactions.Rows[i]["RailcarTransaction_Guid"].ToString()));
}
cboxRailCars.DisplayMember = "Key";
cboxRailCars.ValueMember = "Value";
cboxRailCars.DataSource = Transactions;
}
【问题讨论】:
标签: c# winforms visual-studio-2008 combobox windows-ce