【问题标题】:autosize controls in TabPages自动调整 TabPages 中的控件大小
【发布时间】:2009-02-10 14:57:04
【问题描述】:

我有一个由多个 TabPages 组成的 TabControl。其中一个 TabPages 包含一个 TreeView,另一个包含一个 DataGridView。我希望这些控件(和标签页)在不滚动的情况下自动调整为 TabControl 中允许的最大尺寸。

DataGridView 包含一个继承自 Control 的 AutoSize 属性,如果启用,该属性会使控件出现乱码。 TreeView 没有这个属性。我尝试将 Size 设置为 TabControl.Size ,但这不考虑边框大小和 Tabbar 高度。

treeView.Size = new Size(tabControl.Size.Width - SystemInformation.Border3DSize.Width * 2, tabControl.Size.Height - SystemInformation.Border3DSize.Height * 2);

我的问题是:如何确定 Tab 按钮的高度,或者如何使用单个控件自动将 TabPages 填充到最大尺寸?

【问题讨论】:

    标签: winforms c#-3.0 tabpage


    【解决方案1】:

    您搜索的属性名为Dock

    您可能希望在 TreeView 和 DataGridView 上将其设置为 DockStyle.Fill

    另一种方法是将Anchor 属性设置为AnchorStyle.TopAnchorStyle.LeftAnchorStyle.RightAnchorStyle.Bottom(与二进制或管道符号“|”连接)。 为此,您需要将孩子的大小设置为 ClientSize

    【讨论】:

    • 不幸的是,这不起作用。它将控件停靠到不停靠到 TabControl 的 TabPages。 TabPages 也不包含 Dock 或 Anchor 属性。
    • 据我所知,标签页确实使用了 tabcontrol 的完整客户端大小,或者您如何使用它们?
    • 我正常使用:TabControl t = new TabControl(); TabPage tp = new TabPage(); t.TabPages.Add(tp); 然后我继续设置tabcontrol的大小和位置。关于如何缩放 TabPage 以填充 TabControl 的任何建议?
    • 我无法想象标签页如何无法填充标签控件。我想我不明白你的问题是什么......截图?
    猜你喜欢
    • 1970-01-01
    • 2011-08-29
    • 1970-01-01
    • 2013-11-30
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多