我是wpf的新手,我打算使用列表框生成最近打开或关闭的项目。每次打开文件时,都会将其永久添加到列表框项类型的资源字典中。
另一方面,除了列表框项目之外,还有一个用于删除链接的按钮。
这可能吗?
答案 0 :(得分:6)
ResourceDictionary是IDictionary
。您可以使用indexer添加/覆盖项目。
myResourceDictionary["somekey"] = someObject;
至于您的情况,我更愿意使用ObservableCollection代替bind您的列表框。
答案 1 :(得分:0)
这确实是可能的,除了bitbonk的回答,我会这样说:
您可能 希望ObservableCollection
填充ListBoxItems
。 ListBoxItem
是WPF用于渲染的类,您通常不会自己创建这些类。如果您将数据源设置为(例如)FileInfo
个对象的集合,则可以使用数据模板使列表中的这些项目显示出来,无论您希望如何。这样做的好处是,您不必编写代码将数据对象转换为单独的类,仅用于显示目的。
(您可能使用自己的数据/模型类型而不是FileInfo
,但我对您的解决方案建议不够充分。)