如何将SelectedItem设置为ComboBox?

时间:2016-03-13 04:12:46

标签: c#

我正在尝试将SelectedItem设置为ComboBox。我有一个班usuario,当我打开表格时,我想将usuario设置为组合框。

我怎么能这样做?

尝试。

//setting datasource to combobox
Usuario usuario1 = new Usuario("name", "lastname");
Usuario usuario2 = new Usuario("name", "lastname");
IList<Usuario> list = new List<Usuario>();
list.Add(usuario1);
list.Add(usuario2);
comboBox.DataSource = list;

//form is opened and display the last usuario that was selected
comboBox.SelectedItem = usuario;

2 个答案:

答案 0 :(得分:1)

如果您的意思是显示添加的最后一项,那么您可以尝试使用comboBox1.SelectedIndex = comboBox1.Items.Count - 1;

//setting datasource to combobox
Usuario usuario1 = new Usuario("name", "lastname");
Usuario usuario2 = new Usuario("name", "lastname");
IList<Usuario> list = new List<Usuario>();
list.Add(usuario1);
list.Add(usuario2);
comboBox1.DataSource = list;

//form is opened and display the last usuario that was added
comboBox1.SelectedIndex = comboBox1.Items.Count - 1;

我测试使用:

string usuario1 = "first";
string usuario2 = "last";
IList<string> list = new List<string>();
list.Add(usuario1);
list.Add(usuario2);
comboBox1.DataSource = list;

//form is opened and display the last usuario that was added
comboBox1.SelectedIndex = comboBox1.Items.Count - 1;

这就是结果:

enter image description here

答案 1 :(得分:1)

以下工作正常。当表单加载时,组合框总共有3个项目,并且选择了usarioN。为了更好地理解,我给了Usario的实例名称。

Usuario usuario1 = new Usuario("name1", "lastname1");
Usuario usuario2 = new Usuario("name2", "lastname2");
Usuario usuarioN = new Usuario("nameN", "lastnameN");

IList<Usuario> list = new List<Usuario>();
list.Add(usuario1);
list.Add(usuario2);
list.Add(usuarioN);

cmbItems.DataSource = list;
//property names
cmbItems.DisplayMember = "name";
cmbItems.ValueMember = "lastname";

cmbItems.SelectedItem = usuarioN;