有人可以建议实现我的目标的最佳方法吗?
所以,我有一个带有三个按钮的表单。我想要的是,根据面板上按下的按钮应该显示不同的控件(用户控件)。我以一种简单的方式做到了这一点:所有内容都是从一开始就添加的,我只是对可见性进行了更改。但是,如果有人可以提出更合适的方法,那就太好了,因为不需要从头开始创建对象。
有人可以建议实现我的目标的最佳方法吗?
所以,我有一个带有三个按钮的表单。我想要的是,根据面板上按下的按钮应该显示不同的控件(用户控件)。我以一种简单的方式做到了这一点:所有内容都是从一开始就添加的,我只是对可见性进行了更改。但是,如果有人可以提出更合适的方法,那就太好了,因为不需要从头开始创建对象。
您始终可以创建适当的UserControl
,并在运行时将其添加到Panel.Controls中。这将允许您根据需要创建控件,而不是在初始化表单时。
我确实会在设计时创建控件 - 如果动态创建它们没有优势的话。为什么要把事情复杂化?
如果有许多控件,我会将它们全部放在一个面板中(在您已经提到的面板中),因此您只需更改单个控件(面板)的可见性,而不是其中的每个控件。
当您按下相应的按钮时,显示相应的面板(并记住隐藏其他面板,以防您之前显示过它们)