具有独立内容的WPF 3面板或具有动态生成内容的1面板

本文关键字:面板 动态 独立 WPF | 更新日期: 2023-09-27 18:12:03

我正在创建一个使用简单导航菜单的WPF应用程序。当其中一个菜单项被选中时,我想要一个带有按钮的网格控件变得可见。

我的导航菜单上有3个项目。为了提高速度和更好的编码实践,是否有3个独立的网格,它们都是可见的,直到按钮被点击,其中一个变得可见,或者更好的是只有一个,其内容得到改变取决于什么按钮被点击?

具有独立内容的WPF 3面板或具有动态生成内容的1面板

我更喜欢使用容器控件(例如ListBox)而不是网格。这样,您就可以将三个菜单中的一个绑定到该容器控件的DataContext,具体取决于单击的按钮。

如果你的菜单项是静态的,你也可以使用内容控制和改变ContentTemplate。然后可以在XAML中定义所有三个必需的ContentTemplates。