0

我有一个TabControl,我以编程方式将Form带有GridView控件的 a 添加到 Tab ControlsControls集合中。结果如下所示:

在此处输入图像描述

插图中的 GridView 实际上有大约 150 列......当我使用水平滚动条向右滚动时,我得到了这个:

在此处输入图像描述

请注意,滚动条不会停留在选项卡的可见客户区域中。相反,滚动条假定嵌入表单的宽度。

如何让滚动条假定选项卡中可见客户区的宽度?

这是我的代码。 PcmEditorForm只是一个空白表单,FormBorderStyle设置为无,并且有一些代码可以设置网格中的行数和列数,此处未显示:

    private void LoadEditorTab()
    {
        var editor = new PcmEditorForm();
        var grid = new GridView();
        editor.Width = grid.Width;
        editor.Height = grid.Height;
        editor.Controls.Add(grid);
        editor.AutoScroll = true;
        editor.Anchor = AnchorStyles.Left | AnchorStyles.Top;
        tabEdit.Controls.Clear();
        editor.TopLevel = false;
        editor.Visible = true;
        tabEdit.Controls.Add(editor);
    }
4

1 回答 1

1

为什么不将编辑器停靠在 tabEdit 中。

private void LoadEditorTab()
    {
        var editor = new PcmEditorForm();
        var grid = new GridView();
        grid.width=editor.width
        grid.Anchor= AnchorStyles.Left | AnchorStyles.Top | AnchorStyles.Right;
        editor.Controls.Add(grid);
        tabEdit.Controls.Clear();
        editor.TopLevel = false;
        editor.Visible = true;
        editor.dock=DockStyle.Fill;  // Dock the editor
        tabEdit.Controls.Add(editor);
    }
于 2012-07-03T17:06:24.870 回答