2012-12-13 21 views
2

컬렉션 속성이 Winforms PropertyGrid에 나타나는 방식을 변경하려고합니다. 대신PropertyGrid 컬렉션 속성에서 "..."단추 제거

MyList | (Collection) [...] 

을 가진 그리고 CollectionEditor을 보여주기 위해 버튼을 눌러해야하는

. 나는 ExpandableObjectConverter로서 List를 확장하고있다. 그러나 나는 여전히 [...] 버튼을 얻는다. 이제는 이렇게 보입니다.

[+] MyList | (2 Items) [...] 
    Item 1 | Value 
    Item 2 | Value 

결국 [...] 버튼을 [Add] 버튼으로 바꾸고 싶습니다. 나는 어디서부터 시작해야할지 잘 모른다. 올바르게 이해하면 CollectionEditor는 [...] 키를 누를 때 표시되는 창입니다. 그래서 내 단추를 제거하고 추가하기 위해 재정의해야 할 대상은 무엇입니까?

감사

답변

5

CollectionEditor에서 새 클래스를 상속하고 GetEditStyle 보여주는에서 "..."버튼을 방지하기 위해 None을 돌아보다 우선합니다.

또한 불행히도 표준 propertygrid를 사용하여 Add 버튼을 추가 할 수 없습니다. "...", 아래쪽 화살표 또는 아니오 버튼 중에서 선택할 수 있습니다.

[EditorAttribute(typeof(CustomEditor), typeof(UITypeEditor))] 
:

class CustomEditor : CollectionEditor 
{ 
    public override UITypeEditorEditStyle GetEditStyle(ITypeDescriptorContext context) 
    { 
    return UITypeEditorEditStyle.None; 
    } 
} 

다음과 같은 속성을 사용하여 새로운 에디터에게 때에 프로퍼티를 적용 할 수 있습니다