2008-10-12 6 views
5

나는 텍스트 상자와 다른 사용자 입력 컨트롤의 공통 세트가있는 .net Windows 응용 프로그램에서 여러 폼을 가지고 있으며 각 폼은 동일한 모양과 느낌을 갖지만 각 폼을로드하고 다른 데이터베이스 테이블에 저장해야합니다.시각 상속 또는 사용자 정의 컨트롤?

기본 폼에 컨트롤을 배치하고 컨트롤을 상속하거나 각 폼에 드롭 할 사용자 정의 컨트롤을 만드는 것이 좋습니까?

답변

1

저는 일반적으로 UserControls가 더 융통성 있기 때문에 UserControls를 선호합니다.이를 폼의 컨텍스트 또는 다른 시각적 컨텍스트에서 사용하여 데이터를 표시하거나 수정할 수 있습니다. 필자는 UI 디자인을 별도의 대화 상자에서 변경하여 기본 양식이나 그와 비슷한 내용을 인라인 컨트롤에 맞게 편집해야하는 경우가있었습니다.

그 외에도, 나는 그것이 맛의 문제라고 말하고 싶습니다.

0

에 따라 다릅니다. 복합 모델 (사용자 정의 컨트롤 사용)은 더 깨끗하지만 컨트롤은 호출하는 양식을 인식 할 수 없기 때문에 논리로 이벤트를 전달해야합니다. 때로는 중복 논리로 이어질 수 있습니다.

상속을 사용하면 기본 클래스에서 공통 클래스를 구현하고 하위 클래스 양식에서 일부 재정의를 사용하여 유연한 상호 작용을 구현할 수 있습니다. 그러나 그것은 하위 클래스의 모든 구현자가 기본 클래스 소스 코드를 인식해야하므로 혼란 스러울 수 있습니다.

0

두 가지 방법을 상황에 따라 사용합니다. 기능이없는 LOGIC을 수정하지 않은 양식에 드롭하려는 경우 UserControls가 적절하다고 생각합니다. 그러나 여러 양식에서 공통 UI를 복제하고 확장하려는 경우 시각적 상속이 더 나은 옵션 일 수 있습니다.

0

이벤트에 연결된 사용자 컨트롤을 사용하는 것이 더 간단한 논리에 따라 다릅니다. 공통된 작업이있는 경우 기본 클래스 Server Control을 사용할 수 있습니다.

관련 문제