我创建了两个单独的UserControls
,并且(取决于选择哪个RadioButton
)我希望一个或另一个显示。
现在,我只是将每个UserControl
的一个实例拖到窗体上,然后将一个实例放置在另一个实例上(设置一个.Visible = false;
)。
可以,但是我想知道是否有更好或更合适的方法?
最佳答案
那是完全合理的。
如果您担心保留不再使用的资源,则可以添加Panel
并从此处添加或删除控件。
例如。
try
{
panel.SuspendLayout();
panel.Controls.Remove(userControl1);
panel.Controls.Add(userControl2);
}
finally
{
panel.ResumeLayout();
}
如果用户控件执行诸如连接到数据源之类的操作,则可能需要实际处理并重新创建它们。确实取决于控件的复杂程度。如果他们只是捕获一些属性,那么您当前的解决方案就可以了。
关于c# - 在面板上的两个UserControl之间“切换”的最佳方法?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9491627/