2010-01-07 3 views
1

Compact Framework 3.5 및 pocket PC 2003 플랫폼을 사용하고 있습니다.C# 및 CF : 디자인 타임 특성

내 응용 프로그램에 대한 사용자 지정 컨트롤을 쓰고 있습니다. 디자인 타임 속성으로 공개하고 싶은 일부 속성.

MSDN (http://msdn.microsoft.com/en-us/library/tk67c2t8.aspx)에 설명 된 방법은 실제로 작동하지 않습니다.

내가 얻을 :

형식 또는 네임 스페이스 이름 'CategoryAttribute이'을 (를) 찾을 수 없습니다 (당신은 using 지시문 또는 어셈블리 참조가

I했습니다 사용 인텔리을보고? .

  • EditorBrowsable
  • 드 : 내가 쓸 수있는 속성이 같은 이상한 것들을 나열 signerCategory
  • 의 DefaultValue
  • DesignTimeVisible는

더있다. 나는 그이 방법을 사용하려고하면 :

public partial class Counter : UserControl 
{ 
[EditorBrowsable(EditorBrowsableState.Always)] 
[DesignerCategory("Data")] 
[DesignTimeVisible(true)] 
[DefaultValue(0)] 
public UInt64 theNumber; 

오류를 다음 얻을 .. 난 :

특성 'DesignerCategory는'이 선언 유형에 유효하지 입니다. 은 '클래스'선언에서만 유효합니다.

특성 'DesignTimeVisible'이 이이 선언 형식에 유효하지 않습니다. 은 'class, interface' 선언에서만 유효합니다.

디자인 타임 속성을 사용하는 올바른 방법은 무엇입니까?

답변

1

실제 문제는 속성을 사용하고 있지 않다는 것입니다. 당신은해야합니다

public ulong TheNumber { get; set; } 

또는 속성 다시

private ulong theNumber; 
public ulong TheNumber { 
    get { return theNumber; } 
    set { theNumber = value; } 
} 

: 기본적으로, 간단하게는 지원되지 않습니다 이러한 속성은 (존재하지 않는) 컴팩트 프레임 워크. 귀하가 인용 한 MSDN 기사는 "전체".NET에 대한 것입니다. 예를 들어 DisplayNameAttribute을 보면 CF에서 작동 할 클레임이 없습니다. 등

속성이 이미 있어야합니다 사용할 수 디자인 타임에 설정; 설계 시간 경험을 조정할 수있는 능력과 같은 수준이 아닙니다.

제쳐두고, ulong은 대부분의 코드에서 매우 드물지만 문제는 아닙니다.

관련 문제