Visual Studio里自带的PropertyGrid功能强大,用好了可以省去不少工作。前几天使用到了这个控件,使用过程中发现无法控制控件里标签栏和属性值栏的宽度,Google了一番,发现网上介绍使用这个控件的文章不少,但却没有介绍如何在代码里调整PropertyGrid的标签栏和代码栏的宽度的文章。后来到CodeProject搜索了一下,发现了不少关于PropertyGrid的文章。偶e文不是很好,硬着头皮一篇一篇看了过去,最后功夫不负有心人,总算找到了几篇介绍如何调整标签栏宽度的文章:
Add Custom Properties to a PropertyGrid
.NET PropertyGrid -> How to set column width and description window height(托伟大的GFW的福,这篇文章我是通过TOR才能浏览到)
虽然是不同作者写的,但异曲同工,原理都是通过反射来调用PropertyGrid里自带的的私有成员来实现的。
那么,该如何实现这个功能呢?方法有两种,一种是设置PropertyGrid的labelWidth私有变量;另一种方法是调用PropertyGrid的MoveSplitterTo私有函数。下面详细介绍这两种方法:
