C#WPF DataGrid可编辑下拉列表列实现
WPF 的 DataGrid 里加个可编辑的 ComboBox,其实没你想的那么麻烦。用两种方式都能搞定:DataGridTemplateColumn
和DataGridComboBoxColumn
,但我比较推荐前者。为什么?灵活,自定义样式、行为都方便,尤其对复杂业务场景,能省不少折腾。
你可以用DataGridTemplateColumn
包一层ComboBox
,模板里想怎么搞就怎么搞,绑定也简单明了。比如绑定一个枚举或者字典,选中值还能立即响应修改,体验还挺丝滑的。
DataGridComboBoxColumn也能用,适合场景简单、样式不挑剔的情况。它直接内置 ComboBox,绑定个 ItemsSource、SelectedValue 就行。就是不太好改样式,扩展性差点意思。
想提升样式细节?可以顺手看看WPF ComboBox 样式改进这篇,样式不满意的你肯定用得上。还有个DataGrid 即时编辑的文章,讲的逻辑也蛮贴近业务。
顺手贴个模板例子,免得你找:
如果你数据结构多变、需要样式统一,还是走DataGridTemplateColumn
这条路稳当点。懒得折腾的话,直接套DataGridComboBoxColumn
也能跑。
91.64KB
文件大小:
评论区