可以做一个包装属性,在PropertyGrid上、Designer上或者TypeDescriptor上做手脚都可以,添加自定义的Editor限制大小或者TypeConvertor限制大小
private void propertyGrid1_PropertyValueChanged(object s, PropertyValueChangedEventArgs e)
{
if (e.ChangedItem.Value is int)
{
if (int.Parse(e.ChangedItem.Value.ToString())>100)
{
e.ChangedItem.PropertyDescriptor.SetValue(this.propertyGrid1.SelectedObject, e.OldValue);
}
}
}