从 UltraComboEditor 检索 CheckedItems

Retrieving CheckedItems from an UltraComboEditor

我正在使用 UltraComboEditor(Infragistics) 并将其数据源设置为我创建的用户对象列表。

cboHiddenAreaUser.DataSource = _users.Where(user => !user.IsInactive).OrderBy(user => user.FullName).ToList();

使用标准的 WinForms ComboBox,我可以将 SelectedItem 转换为 User 对象并获取我需要的数据。检索用户选择的选中用户对象的最佳方法是什么?我收到一条错误消息,指出我 "Cannot cast expression of type 'Infragistics.Win.CheckValueListItemsCollection' to type 'List'".

var selectedUsers = (List<User>)cboHiddenAreaUser.CheckedItems;

您将以这种方式检索每个用户:

foreach (Infragistics.Win.ValueListItem item in ultraComboEditor1.CheckedItems)
{
    User u = (User) item.ListObject;
}

ListObject 属性 存储每个项目的基础绑定实例。然后,您可以为 return "checked" 用户建立自己的列表。