Cal*_*vin 4 c# flowlayoutpanel winforms
我正在使用一个flowlayoutpanel,每个逻辑都有很多按钮.我有一个问题,当我调整窗口大小时,我不是当窗口变小时我无法看到所有按钮水平排列.而当窗口变小时,按钮会下降到下一行.任何人都可以帮我解决这个问题吗?我只想让按钮水平排列,当窗口变小时,有一个水平滚动条.以下是我所拥有的.
fLayoutPnl.Controls.Add(btn1);
// snipped adding buttons from 2 to 15
fLayoutPnl.Controls.Add(btn16);
fLayoutPnl.Dock = System.Windows.Forms.DockStyle.Top;
fLayoutPnl.Location = new System.Drawing.Point(0, 10);
fLayoutPnl.Name = "fLayoutPnl";
fLayoutPnl.Size = new System.Drawing.Size(1245, 30);
Run Code Online (Sandbox Code Playgroud)
Hyr*_*lex 10
如果将flowlayoutpanel停靠在顶部,则采用父控件的大小.因此,如果您想要水平滚动,则需要设置窗体(或usercontrol)的AutoScrollMinSize.
否则,你可以这样做:
this.AutoScroll = true;
this.fLayoutPnl.Dock = System.Windows.Forms.DockStyle.None;
this.fLayoutPnl.AutoSize = true;
this.fLayoutPnl.AutoSizeMode = System.Windows.Forms.AutoSizeMode.GrowAndShrink;
this.fLayoutPnl.Location = new System.Drawing.Point(0, 10);
this.fLayoutPnl.Name = "fLayoutPnl";
this.fLayoutPnl.Size = new System.Drawing.Size(1245, 30);
Run Code Online (Sandbox Code Playgroud)
fLayoutPnl.WrapContents = false;
Run Code Online (Sandbox Code Playgroud)
这将解决问题.如果需要滚动条,请设置MinimumSize
面板的属性,之后应显示滚动条
要通过垂直滚动来查看流布局面板的所有内容,请将 AutoScroll 属性设置为 True,并且不要忘记将 WrapContents 属性设置为 True。如果要通过水平滚动查看内容,请将 AutoScroll 属性设置为 True,并且不要忘记将 WrapContents 属性设置为 False。
归档时间: |
|
查看次数: |
16851 次 |
最近记录: |