我正在使用UltraComboEditor(Infragistics)并将其数据源设置为我创建的用户对象列表。
cboHiddenAreaUser.DataSource = _users.Where(user => !user.IsInactive).OrderBy(user => user.FullName).ToList();
使用标准的WinForms ComboBox,我能够将SelectedItem转换为用户对象并获取所需的数据。检索用户选择的已检查用户对象的最佳方法是什么?我收到一个错误,指出我"无法将类型'Infragistics.Win.CheckValueListItemsCollection'的表达式转换为键入'List'"。
var selectedUsers = (List<User>)cboHiddenAreaUser.CheckedItems;
您可以通过以下方式检索每个用户:
foreach (Infragistics.Win.ValueListItem item in ultraComboEditor1.CheckedItems)
{
User u = (User) item.ListObject;
}
ListObject
属性存储每个项的基础绑定实例。 然后,您可以构建自己的列表来返回"选中"的用户。