Windows窗体中的Panel和ScrollBar

Uth*_*aj. 1 c# panel scrollbar winforms

我正在使用面板在Windows窗体中显示图像我在Panel_Paint事件的面板中绘制图像,如下所示:

Graphics g = panel1.CreateGraphics();
Image im = new Bitmap(@"../../Data/#3_Page2.PNG");
g.DrawImage(im,new Point(10,10));
Run Code Online (Sandbox Code Playgroud)

现在,图像按照我的预期绘制,图像底部的某些部分不显示,因为它的高度大于表格高度.我现在添加了VScrollBar.如何在VScrollBar的帮助下使该面板查看图像的其余部分.

小智 5

您可以使用PictureBox将SizeMode设置为Panel的AutoSize和AutoScroll属性.这样,如果需要,面板应添加滚动条.

PictureBox pictureBox = new System.Windows.Forms.PictureBox();
pictureBox.Image = new Bitmap(@"../../Data/#3_Page2.PNG");
pictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize;

panel.AutoScroll = true;
panel.Controls.Add(this.pictureBox);
Run Code Online (Sandbox Code Playgroud)

  • 他因为想画他的形象而惹上了麻烦。完全不清楚他为什么要这样做,这个答案给出了一个不错的解决方案。 (2认同)