基于组合框值切换控件
本文关键字:控件 于组合 组合 | 更新日期: 2023-09-27 18:08:44
我正在考虑开发一个GUI,该GUI将根据所选组合框项的值切换控件。
我曾尝试在visual studio中为gui设计器添加不同的画布或网格,但很难管理,因为在设计器中所有内容都相互重叠,很难知道什么是什么。
是否有一个简单的方法,我可以做到这一点,是否有一个特殊的控制,使这很容易实现。我不想用c#编写gui而不使用xaml。
我希望做的是,所有的控件都在那里自己的面板,当组合框的值被改变一个面板被删除或隐藏,另一个显示。
这样的事情是怎么做到的?
感谢您提供的任何帮助
你可以实现每个不同的"模式"作为一个单独的UserControl。
然后有一个带有组合框的shell,其中组合框OnChange将交换UserControl插入到shell中的内容。
任何其他完全常见的组件,如OK/cancel按钮都可以成为shell的一部分。
可以考虑的另一种完全替代的实现是选项卡方法,但这可能只有在用户对其中几个操作有意义的情况下才可行。
如果用户在组合中选择A,在UserControlForA中进行更改,然后在组合中选择B,你会怎么做?这可能是一个恼人的角落情况,如果这是生产代码,你会得到未来的用户请求改变它的工作方式。
如果你对设计有把握,就去做吧。如果没有,我会尝试一些应用程序,并尝试找到一个类似的例子,并考虑他们是如何处理它的。
但是从技术上讲,我认为UserControl就是你所描述的。
(编辑:crud只是看到问题中的xaml/wpf,不确定这是正确的,在这种情况下,无能的存在)
您可以为每种不同的模式使用DataTemplate
。有关详细信息,请参阅WPF列表中每个项的不同项模板。