【问题标题】:Adding panels to SplitContainer in Windows Forms在 Windows 窗体中将面板添加到 SplitContainer
【发布时间】:2012-05-04 16:22:11
【问题描述】:

我无法找到有关如何将面板添加到 SplitContainer 的文档。我可以很好地创建 SplitContainer,但我不能将我编写的面板放入 splitcontainer。

我试过了

sc.Container.Add(myPanel);
sc.Container.Add(myOtherPanel);

Container 始终为空。有谁知道我做错了什么?

【问题讨论】:

    标签: c# winforms splitcontainer


    【解决方案1】:

    SplitContainer 始终包含两个面板,您无法更改! (而且您不需要自己添加任何面板。)

    您可以通过属性Panel1Panel2 访问这两个面板。

    如果您需要更多面板,您可以嵌套多个SplitContainers


    更新

    您无法替换现有面板。您可以做的是,将您自己的控件放在现有的拆分容器面板上(您的控件也可以是 System.Windows.Forms.Panels 包含其他控件或用户定义的控件):

    sc.Panel1.Controls.Add(myPanel);
    sc.Panel2.Controls.Add(myOtherPanel);
    
    myPanel.Dock = DockStyle.Fill;
    myOtherPanel.Dock = DockStyle.Fill;
    

    当然,如果您没有必须动态添加控件的场景,您也可以使用 Visual Studio 的表单设计器添加它们。如果您创建自己的控件,它们将自动出现在同一项目内的工具箱中,您只需将它们拖放到 SplitContainer 的面板上即可。

    【讨论】:

    • 我并不想添加更多面板。我想将我编码的面板放入拆分容器中。我会编辑我的帖子。
    • 我明白了。面板已经创建,您只需自己添加控件即可。谢谢。
    • 是的,如果您没有必须动态添加控件的场景,您可以使用 Visual Studio 的表单设计器添加它们。如果您创建自己的控件,它们将自动出现在同一项目内的工具箱中,您只需将它们拖放到 SplitContainer 的面板上。
    【解决方案2】:

    SplitContainer 控件已经有两个名为 Panel1 和 Panel2 的面板。选择您要使用的面板:

    sc.Panel1.Controls.Add(myPanel);
    sc.Panel2.Controls.Add(myOtherPanel);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-08-15
      • 1970-01-01
      • 2012-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多