日期:2014-05-18  浏览次数:20933 次

C#中控件怎么按窗口比例改变大小???
也就是控件的长宽和窗口的长宽比例,始终不变

------解决方案--------------------
Dock 只有选择Fill的时候才会按照窗口改变大小,其他只是改变位置
如果你是想让Listview等随着窗口自动调整大小,那确实可以使用DOCK属性
具体做法是如果整个窗口只有一个Listview控件,那么你可以直接选择DOCK的属性为Fill,如果你有好多控件,那么建议先使用SplitContainer,然后把ListView置于其中一个Paint中,然后设定其DOCK属性为Fill,在SplitContainer中也可以添加SplitContainer,这样不管你几组控件,最终总能实现让ListView或者Treeview等视图控件达到跟随窗口变动的功能。
而如果你是希望Button之类的空间随着窗口变化,那么你可以编写窗口的Resize事件,在该事件中自动改变Button的大小
------解决方案--------------------
我使用的是下面兩種方式:
1、重寫相關常用的控件,讓其可以改變控件高度。
2、因為控件的高度與字體相關,所以設置字體為最符合當前需要高度的那個字體大小。因為基本上所有控件的高度與字體大小是一致的,所以只要取得當前高度的字體大小,就可以設置所有不能改變高度的控件字體。