2017-02-24 151 views
0

使用以下代码,组合框cbAdditionalFields未在SelectedItem属性中保存选定值。如何获得组合框的选定项目属性?和选择改变不注重如何从组合框中获取所选项目值

var userFields = recordType.UserFields.Where(u => u.Format == UserFieldFormats.String); 

cbAdditionalFields.DataSource = userFields.ToList(); 
cbAdditionalFields.DisplayMember = "Name"; 
+0

在'DataSource'之前设置'DisplayMember' –

回答

1

这可能会为这样的伎俩,你

private void cbAdditionalFields_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{ 
    // ... Get the ComboBox. 
    var comboBox = sender as ComboBox; 
    //string value = comboBox.SelectedItem as string; 
    UserField value = comboBox.SelectedItem as UserField; 
    Console.WriteLine(value.Name); 
} 

现在value包含ComboBox中当前选定的项目。

+0

SelectedItem没有“Name”属性,它显示为UserField类型的对象 – billboard

+0

查看更新后的答案@billboard。 :) –

0

您可以通过设置ComboBox的选定索引或选定值属性来解决此问题。 cb.selectedIndex = 0;

+0

我收到一个错误“无法设置ListControl中的SelectedValue与一个空的ValueMember。” – billboard

相关问题