首页 新闻 会员 周边 捐助

如何使滚动条控制控件中内容的同步滚动

0
悬赏园豆:20 [已解决问题] 解决于 2009-08-06 13:29

我在一个继承自usercontrol的控件中画了一系列的矩形框,已经超出了控件能显示的范围,而我又想把他们都显示出来,我就加了下面和右面的滚动条,可是执行后没有反应,觉得应该写点什么代码,把控件里图形与滚动条关联起来,那我该怎么写呢?

问题补充: 我已经把控件的AutoScroll设置为TRUE了,可是还是在超出控件的显示范围后仍然不会出现滚动条! 我已经知道是为什么会出现这种情况了:超出范围还是没有滚动条的原因是,windows不知道它需要滚动条,首先要确定文档区域的大小: this.AutoScrollMinSize = new System.Drawing.Size(1000, 2000); 现在还不算完,还要转换一下坐标: Graphics g=this.CreateGraphics(); Size scrolloffset = new Size(this.AutoScrollPosition); Size rectSize = new Size(MyFrame_Width, MyFrame_Hight); Pen pen = new Pen(My_FramColor); Brush brush = new SolidBrush(My_FillFrameColor); Rectangle rect = new Rectangle(p + scrolloffset, rectSize); g.FillRectangle(brush,rect); g.DrawRectangle(pen, rect); 这个时候,滚动条的设置才算完整。 http://topic.csdn.net/u/20090803/09/5d4d9a17-d12b-4b28-bfd0-42bfe671cfcd.html?seed=559958975&r=58883196#r_58883196
三丫头的主页 三丫头 | 初学一级 | 园豆:185
提问于:2009-08-02 19:14
< >
分享
最佳答案
0

设置UseControl的AutoScroll 为True就可以了;

AutoScroll = true;

收获园豆:20
winzheng | 大侠五级 |园豆:8797 | 2009-08-02 21:53
我这样设的可是没有用啊,还是原始大小,不会出现滚动条。
三丫头 | 园豆:185 (初学一级) | 2009-08-03 08:42
是不是控件足够大,所以不够Auto,或者你的控件下面有个其他控件吧。
winzheng | 园豆:8797 (大侠五级) | 2009-08-06 13:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册