C#Panel自动滚动不起作用

Mar*_*ijn 13 c# winforms

我有一个带有图片框的面板.当图片框的内容太大时我想要滚动条.我在面板上将autoscroll设置为true.但是当图片框的内容较大时,面板/图片框的高度不会显示滚动条.

我的面板固定在顶部,左侧,底部,右侧.图片框也固定在顶部,左侧,底部,右侧.

Joe*_*oey 21

您必须设置导致PictureBox自动调整大小为图片大小的SizeMode属性AutoSize.

而且我认为你应该放下锚点,只能锚定在左上方.其余部分由专家组自动处理.因为否则PictureBox可能会尊重锚点,无法调整自身大小而不是它包含的面板 - 导致没有再次滚动条.

  • "我认为你应该放下锚点,只能锚定在左上方"除了我的一天,ty! (3认同)

ser*_*hio 10

来自MSDN:

目前,Windows窗体中存在一个限制,它会阻止所有派生的类ScrollableControlRightToLeft启用和AutoScroll设置时都能正常运行True.例如,假设您在表单上放置一个控件,例如Panel- 或从Panel(例如FlowLayoutPanelTableLayoutPanel)派生的容器类.如果AutoScroll在容器上True设置,然后Anchor在容器内的一个或多个控件上设置属性Right,则不会出现任何滚动条.从类似ScrollableControl行为派生的类AutoScroll被设置为False.

  • 我的意思是问题!我没有看到它.这个答案仅适用于启用"RightToLeft"和"AutoScroll"的情况.但我不认为问题描述了这样的情况? (4认同)
  • 有没有提到`RightToLeft`? (3认同)

Hen*_*rik 6

图片框不应该在底部和右边锚定.而是将其大小调整为要显示的内容.