Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# MDI父窗体中的滚动条刷新问题_C#_.net_Winforms_Mdi_Mdiparent - Fatal编程技术网

C# MDI父窗体中的滚动条刷新问题

C# MDI父窗体中的滚动条刷新问题,c#,.net,winforms,mdi,mdiparent,C#,.net,Winforms,Mdi,Mdiparent,我有一个以图形窗口作为子窗口的父窗体。 在父窗体中,面板左侧有一些按钮。 在父窗体的剩余区域中,将显示子窗口。我正在以以下方式手动定位子窗口 第一窗口 第二窗口 第三个窗口,以垂直方式。因此,这也会在父窗体的右侧创建一个滚动条 单击图形按钮后,将创建子窗口并将其定位在所有其他子窗口的底部。由于添加了一个新窗口,滚动条大小也需要刷新。仅当我将光标悬停在滚动条上时,滚动条的垂直高度才会改变。 因此,我点击左侧的按钮,然后要更新滚动条,我需要移动右侧滚动条上的光标 我试图访问滚动条,但由于它是自动生成

我有一个以图形窗口作为子窗口的父窗体。 在父窗体中,面板左侧有一些按钮。 在父窗体的剩余区域中,将显示子窗口。我正在以以下方式手动定位子窗口

第一窗口

第二窗口

第三个窗口,以垂直方式。因此,这也会在父窗体的右侧创建一个滚动条

单击图形按钮后,将创建子窗口并将其定位在所有其他子窗口的底部。由于添加了一个新窗口,滚动条大小也需要刷新。仅当我将光标悬停在滚动条上时,滚动条的垂直高度才会改变。 因此,我点击左侧的按钮,然后要更新滚动条,我需要移动右侧滚动条上的光标

我试图访问滚动条,但由于它是自动生成的,我无法找到方法刷新它或手动提供焦点

问题如下:

应该是这样的

我上传了一段视频来展示这个行为,还有一个演示项目。 演示项目: 屏幕共享视频:

是否可以在不移动用户光标或用户单击滚动条的情况下更新滚动条

打开或关闭子窗口后,我试图更改MdiParentForm.VerticalScroll.Minimum和maximum,但没有帮助。我还尝试禁用和启用垂直滚动以及MdiParentForm.AdjustFormScrollbars,但没有成功

我有autoscroll=false,因为我无法以MDI容器形式使其为真。 创建子窗口后,我以父窗体的形式编写了下面的内容

    this.VerticalScroll.Minimum = 0;
    this.VerticalScroll.Maximum = this.MdiChildren[this.MdiChildren.Length -1].Location.Y + this.MdiChildren[this.MdiChildren.Length - 1].Height;
    this.AdjustFormScrollbars(true);            
    this.PerformLayout();
链接

我想出来了。 错过了很小的事情。 我需要写作

    this.Refresh(); 
在此之后。执行布局();
它成功了。

我忘了提到,在创建或关闭子窗口后,我已经尝试从父窗体调用此.Performlayout()。滚动条从未反映任何更改。@saumilpatel听起来好像您没有设置PropertyGrid的Dock属性,使其浮动在MdiClient的顶部。将PropertyGrid的Dock属性设置为Right,然后MdiClient将仅限于表单的其余部分,滚动条应显示在您希望的位置。我的问题与您提供的链接不同。没有任何东西是浮动的,所有东西都定位正确。滚动条也会出现。问题是滚动条的奇怪行为
    this.Refresh();