Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.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# 添加垂直滚动条并更改其颜色不起作用_C#_Visual Studio_Scrollbar - Fatal编程技术网

C# 添加垂直滚动条并更改其颜色不起作用

C# 添加垂直滚动条并更改其颜色不起作用,c#,visual-studio,scrollbar,C#,Visual Studio,Scrollbar,我在VisualStudio中创建了一个表单,其中包含许多要显示的字段;字段需要额外的区域(大于屏幕大小)。 我正在尝试调整表单大小,但它阻止我进行调整。 我试图添加一个垂直滚动条,但也没有成功 请注意,我想在表单中添加一个新的滚动条并更改其颜色,而不是激活默认的滚动条 private void Form1_Load(object sender, EventArgs e) { VScrollBar vScroller = new VScrollBar(); vScroller.D

我在VisualStudio中创建了一个表单,其中包含许多要显示的字段;字段需要额外的区域(大于屏幕大小)。
我正在尝试调整表单大小,但它阻止我进行调整。
我试图添加一个垂直滚动条,但也没有成功

请注意,我想在表单中添加一个新的滚动条并更改其颜色,而不是激活默认的滚动条

private void Form1_Load(object sender, EventArgs e)
{
    VScrollBar vScroller = new VScrollBar();
    vScroller.Dock = DockStyle.Right;
    vScroller.Width = 30;
    vScroller.Height = 200;
    vScroller.Name = "VScrollBar1";
    this.Controls.Add(vScroller);
 }

您可以使用以下代码成功添加垂直滚动条

 ScrollBar vScrollBar1 = new VScrollBar();
    private void Form1_Load(object sender, EventArgs e)
    {
        vScrollBar1.Dock = DockStyle.Right;
        vScrollBar1.Dock = DockStyle.Right;
        vScrollBar1.Scroll += new ScrollEventHandler(vScroller_Scroll);
        panel1.Controls.Add(vScrollBar1);
        panel1.VerticalScroll.Visible = false;
        panel1.VerticalScroll.Enabled = true;
        this.Controls.Add(vScrollBar1);

    }
    private void vScroller_Scroll(object sender, ScrollEventArgs e)
    {
        panel1.VerticalScroll.Value = e.NewValue;
    }
至于改变颜色的失败,你可以看看。它清楚地描述了原因

结果:

使用类来绘制滚动条的各个部分,构建一个CustomControl。如果还不够,则必须从头开始构建控件,或从中派生(或受其启发)控件。另见。如果这还不够,你可能不得不转向WPF。你的目标是什么:Winforms、WPF、ASP。。?您应该始终正确标记您的问题,以便人们可以在问题页面上看到它!谢谢,但这只是在表单中添加了一个滚动条,但不起作用。我已经更新了代码,并给出了测试结果。你可以检查一下它是否适合你。