2013. 2. 27. 14:59

자신이 만든 컨트롤에 특정 속성을 넣을수 있습니다.

그것도 간단하게 말이죠.

 

 

1. 비하인드 코드 작성

일단 비하인드코드에 해당속성을 어떻게 처리할지를 구성해 줍니다,

/// <summary>
/// 지정할 텍스트
/// </summary>
[Category("Text"), Description("지정할 텍스트")]
public string Text
{
	get
	{
		return this.labText.Text;
	}
	set
	{
		this.labText.Text = value;
	}
}

 

Category : 속성 창에 표시될 이름

Description : 속성에 대한 설명(밑에 속성설명창에 나오는 내용인데.... 바로 적용이 안되는 듯 하네요)

(참고 : MSDN - CategoryAttribute 클래스)

 

일반적인 겟셋(getter, setter)접근자와 동일하다고 생각하시면 됩니다.

이렇게 "[Category("Text"), Description("지정할 텍스트")]" 이 코드만 겟셋접근자위에 적어주신 후 빌드를 다시 하시면 컨트롤에서 속성으로 볼 수 있습니다.

 

 

에러 없이 작성되는군요.

 

 

2. 테스트

이제 실행해봅시다.

 

비하인드코드에서도 정상적으로 접근됩니다.

 

마무리

이 방법은 윈폼(WinForm)이던 웹폼(WebForm)이던 적용이 됩니다.

간단하게 속성을 추가해서 사용할 수 있어서 편하고 좋죠 ㅎㅎㅎㅎ