我有一个c#窗体,使用线程工作者在加载时拉出一个通用列表。这会填充客户编号的下拉列表。
private void ZurichAccountTrades_Load(object sender, EventArgs e)
{
tbLocation.Text = @"C:\Reports\Output\";
lbGettingData.Visible = true;
CheckForIllegalCrossThreadCalls = false;
var thdWorker = new Thread(PopulateDropDownPersonNumbers);
thdWorker.Start();
}
private void PopulateDropDownPersonNumbers()
{
ddProviderNo.Enabled = false;
progressBar1.Increment(10);
//Get data somehow here....
foreach (var person in providerPNos)
{
ddProviderNo.Items.Add(person.PersonNo);
progressBar1.Increment(1);
}
progressBar1.Increment(100);
lbGettingData.Visible = false;
ddProviderNo.Enabled = true;
progressBar1.Value = 0;
}
private void ddProviderNo_SelectedIndexChanged(object sender, EventArgs e)
{
//What do I do here??
}
我想要的是当用户选择客户端号码时,会自动显示客户端名称(保存在同一列表中)。
如何做到这一点?
答案 0 :(得分:0)
添加对象Person
而不是PersonNo
ddProviderNo.Items.Add(person);
然后:
private void ddProviderNo_SelectedIndexChanged(object sender, EventArgs e)
{
ComboBox comboBox = sender as ComboBox;
textBox.Text = (comboBox.SelectedItem as Person).Name;
}
答案 1 :(得分:0)
您可以将客户端名称绑定到ComboBox的DisplayName属性。然后当它改变时,你可以使用它..