简体   繁体   English

面板中仅水平滚动

[英]Only horizontal scrolling in a panel

How do I set my panel so it will only scroll horizontal? 如何设置面板使其仅水平滚动? I have tried: 我努力了:

this.VerticalScroll.Enabled = false;

But it doesn't work. 但这是行不通的。

Try this instead for 'only' scrolling horizontal. 请尝试使用此方法,以“仅”水平滚动。
(auto scroll needs to be false b4 it will accept changes) (自动滚动必须为假b4,它将接受更改)

mypanel.AutoScroll = false;
mypanel.VerticalScroll.Enabled = false;
mypanel.VerticalScroll.Visible = false;
mypanel.VerticalScroll.Maximum = 0;
mypanel.AutoScroll = true;

you can try 你可以试试

panel.AutoScroll = true;
panel.HorizontalScroll.Enabled=false;
panel.HorizontalScroll.Visible = false;

It works using this code in my panel: 它可以在我的面板中使用以下代码工作:

    protected override void WndProc(ref System.Windows.Forms.Message m)
    {
        ShowScrollBar(this.Handle, 1, false);
        base.WndProc(ref m);
    }

    [DllImport("user32.dll")]
    [return: MarshalAs(UnmanagedType.Bool)]
    private static extern bool ShowScrollBar(IntPtr hWnd, int wBar, bool bShow);

如果面板不执行AutoScroll ,则可以使用其VScroll属性:

yourPanel.VScroll = false;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM