1. 程式人生 > >自定義propertygrid彈出屬性編輯框

自定義propertygrid彈出屬性編輯框

using System;
using System.Drawing.Design;
using System.ComponentModel;

namespace ***
{
    class propertyEdit:UITypeEditor//必須繼承該類,因為所有的propertygrid都是直接或間接繼承自該類
    {
        public override UITypeEditorEditStyle GetEditStyle(System.ComponentModel.ITypeDescriptorContext context)
        {
            //指定為模式窗體屬性編輯器型別
            return UITypeEditorEditStyle.DropDown;//Modal為省略號型別,DropDown為下拉列表
        }

        public override object EditValue(ITypeDescriptorContext context, IServiceProvider provider, object value)
        {
            //開啟屬性編輯器修改資料
            return editScript.EditValue(value);//editScript就是前面新建的窗體,獲得窗體中的值
        }
    }
}
執行結果如下圖: