日期:2014-05-20  浏览次数:20860 次

如何指定一个Panel里面内容显示的位置?
一个Panel高只有100,里面放了很多的控件,下面有一些显示不出来,如何点击一个按钮把下面的控件显示出来,就是类似滚动条向下拉的效果,各位帮忙!!

------解决方案--------------------
把 panel 的 AutoSize 设 true
把 panel 的上级容器的 AutoScroll 设 true
------解决方案--------------------
考虑下使用ScrollWindow这个API:

[DllImport( "user32.dll ", CharSet = CharSet.Auto, ExactSpelling = true)]
[return: MarshalAs(UnmanagedType.Bool)]
private static extern bool ScrollWindow(IntPtr hWnd, int nXAmount, int nYAmount, ref RECT rectScrollRegion, ref RECT rectClip);

------解决方案--------------------
你的panel是单一底色吧,可以用css把滚动条过滤掉,这是一个例子,参考下吧

<style type=text/css>
<!--
#talk{line-height: 100%; scrollbar-arrow-color:#3b3b3b; scrollbar-face-color:#3b3b3b; scrollbar-darkshadow-color:#3b3b3b; scrollbar-highlight-color:#3b3b3b; scrollbar-3dlight-color:#3b3b3b; scrollbar-shadow-color:#3b3b3b; scrollbar-track-color:#3b3b3b;filter:chroma( color = #3b3b3b ); allowtrancparency:true;}
-->
</style>
------解决方案--------------------
呵呵,winform啊,不好意思,没注意哪个版块的,没这么搞过,看看百姓兄的方法吧