我有一个TabControl
,我以编程方式将Form
及其GridView
控件添加到Tab Controls Controls
集合中。结果如下:
插图中的GridView实际上有大约150列......当我使用水平滚动条滚动到右边时,我得到了这个:
请注意,滚动条不会停留在选项卡的可见客户区域中。相反,滚动条假定嵌入表单的宽度。
如何让滚动条显示选项卡中可见客户区的宽度?
这是我的代码。 PcmEditorForm
只是一个空白表单,FormBorderStyle
设置为none,并且有一些代码可以设置网格中未显示的行数和列数:
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);
}
答案 0 :(得分: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);
}