实现动态/级联列表框的最佳方法[关闭]
Posted
技术标签:
【中文标题】实现动态/级联列表框的最佳方法[关闭]【英文标题】:Best way to implement dynamic/cascading ListBoxes [closed] 【发布时间】:2021-09-14 01:12:10 【问题描述】:我目前正在努力解决如何最好地在我的应用程序中设置动态/级联列表框。我有一个分层表,我希望用户能够从***别进行选择,并且根据用户更高级别的选择更新较低级别的列表框。
我正在使用 C# 开发 WPF/MVVM 应用程序
示例数据:
Z000 | Z100 | Z200 | Z300 |
---|---|---|---|
A000 | A100 | A110 | A111 |
A000 | A100 | A110 | A112 |
A000 | A200 | A210 | A211 |
A000 | A200 | A210 | A212 |
A000 | A300 | A310 | A311 |
A000 | A300 | A320 | A321 |
B000 | B100 | B110 | B111 |
B000 | B100 | B110 | B112 |
B000 | B200 | B210 | B211 |
B000 | B200 | B220 | B222 |
C000 | C100 | C110 | C111 |
C000 | C100 | C110 | C112 |
C000 | C100 | C120 | C121 |
C000 | C200 | C210 | C211 |
当应用程序加载时,它应该显示四个列表框,每个列表框显示 Z000、Z100、Z200、Z300 的不同值。
无论层次结构如何,用户都可以从任何列表框中选择一个选项。
例如。如果用户从第二个列表框 (Z100) 项 [A200] 中进行选择,则所有下部列表框应更新以在 A200 下为 Z200[A210] 和 Z300[ 显示不同的值A211, A212] 不应该影响更高级别的列表框(Z000)
抱歉,我很难以书面形式描述这种情况。
【问题讨论】:
【参考方案1】:我发现级联 ListBox 的想法非常有趣。所以我创建了一个项目来实现它。请查看我的 GitHub repo。这是一些屏幕截图。希望我正确理解要求。
【讨论】:
非常感谢您的努力。您的解决方案澄清了我正在努力解决的一些问题。我很难弄清楚如何刷新较低级别的项目而不影响较高级别的项目,而且我所有的尝试都过于复杂。子列表框和层次结构很棒。再次感谢!以上是关于实现动态/级联列表框的最佳方法[关闭]的主要内容,如果未能解决你的问题,请参考以下文章