在我的控制中,我有一个 ListBox
.每个 ListBoxItem(通过 ItemTemplate)显示为 Combobox
其 ItemsSource 是我的控件的 ViewModel 中的 ObservableCollection。
该组合框旁边是一个按钮,用于从列表中删除一个元素(按钮的单击命令绑定(bind)到我控件的 ViewModel 中的删除命令)。这可以根据需要正常工作。
现在我希望能够向 ListBox 添加新元素。我知道如何通过单击 ListBox 外部或 ListBox 的 ItemTemplate 中的某个按钮来执行此操作,但我想添加某种额外的“空”项作为我的 ListBox 的最后一项。
这个“空”项目应该看起来像任何其他项目,除了 ComboBox 没有选择。一旦用户做出选择,就必须显示一个新的“空”项目。我希望你知道我的意思……当你在这里发布一个新问题时,它有点像“标签”编辑器;)
有任何想法吗??? (不违反 MVVM 规则)...
最佳答案
而不是 ListBox
, 使用 DataGrid
与 CanUserAddRows="True"
.它将添加“新行”行,并完全按照您的意愿行事。
关于c# - WPF ListBox,自动添加 "new element"行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31586004/