在C#Winforms中将多个面板放在TableLayoutPanel的单个单元格中

问题描述 投票:0回答:1

我正在开发一个C#Winforms应用程序。我使用TableLayoutPanel将表单划分为表格单元格。对于表格布局的特定单元格,我想插入多个面板 - 一个在另一个面板上,这样我就可以使用BringToFront()在面板之间切换(仅针对该单元格)。

我在一个似乎有效的表格上尝试了同样的方法。在表格布局的单元格中,我只能在其中添加一个面板。当我尝试在该单元格中添加其他面板时,这些面板将嵌入到第一个面板中。这使得难以在面板之间切换。

我还尝试将所有必需的面板插入空面板(放置在单元格中)。但是,我无法弄清楚如何在它的儿童面板之间切换。

注意:面板的切换将由表中某些其他单元格中的ComboBox选择触发。

c# .net winforms layout software-design
1个回答
1
投票

如果你想在面板之间切换,那将永远是错误的,因为底部面板将成为顶级面板的父级... @Hans Passant在另一个主题中提供解决方案并引用:

这可以通过View>(Other Windows)> Document Outline解决,将顶部面板拖回到表单。仍然非常痛苦,您通常需要手动编辑位置,然后在设计器中对表单进行任何更改往往会使面板黯然失色。

有更好的方法来做到这一点。强烈建议使用创建UserControl,它们有自己的设计图面。或者使用RAD方式并使用TabControl执行此操作

完整学分:Credits

© www.soinside.com 2019 - 2024. All rights reserved.