如何在组合框中显示最近使用的列表
我正在使用 infragistics WPF 编辑器和 XamComboEditor。在以前的 WinForms 版本中,有 MRU 列表功能。它的基本作用是在列表的开头显示最近使用的项目的列表,并用一些分隔符(无法选择)分隔这些项目。此分隔符之后是组合框项目的常规列表。
现在,基础设施组合不提供此功能。我必须自己开发它,问题是如何解决这个问题。我最关心的是如何修改当前的组合框(它可以是常规的 wpf 组合框)以实际显示它。
欢迎任何建议。
I'm using infragistics WPF editors and XamComboEditor. In previous WinForms version there was MRU list capability. What it basically does is it displays list of most recently used items at the beginning of the list and separates those items with some separator (which cannot be selected). Regular list of combo box items follows after this separator.
Now, infragistics combo does not provide this functionallity. I'll have to develop it on my own and the question is how to approach this. My biggest concern is how to modify current combo box (it can be regular wpf one) to actually display it.
Any suggestions are welcome.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
要处理实际的 UI 部分,您可以使用 CollectionViewSource/ICollectionView 的分组和可选的排序(如果您希望对 MRU 进行排序)来修改 ComboBox 的集合视图。大部分工作将根据您的具体情况设置数据,但在绑定到分组 ICollectionView 后,您需要在 UI 中执行的操作是在您可能想要的 ComboBox 上设置 GroupStyle仅对非 MRU 组显示分隔符,对 MRU 不显示任何内容。
To handle the actual UI part you can use CollectionViewSource/ICollectionView's Grouping and optionally Sorting (if you want the MRU to be ordered) to modify the ComboBox's view of the collection. Most of the work is going to be setting up the data which will be specific to your situation but all you'll need to do in the UI after you're bound to a grouped ICollectionView is set a GroupStyle on the ComboBox where you probably want to show a separator only for the non-MRU group and nothing for the MRU.