2009-09-05 6 views
0

.NET에서 캘린더를 사용하고 싶지 않기 때문에 웹 사용자 컨트롤에 3 개의 드롭 다운 상자, 일, 월, 연도가 하나 있습니다. [코드 완료].Validate - 웹 사용자 컨트롤

이 컨트롤을 호출하고 시작 연도와 종료 연도 및 선택한 날짜를 포함하여 초기화 할 수 있기를 원합니다. [코드 완료].

이 컨트롤은 하나의 유효한 날짜가 선택되어 있는지 확인하고 [CODE DONE]을 반환합니다.

그런 다음 내 웹 페이지에서 해당 웹 사용자 정의 컨트롤이 정상적인 .NET 유효성 검사 (관련 필드 하나 필요)와 함께 사용할 수있는 방식으로 유효한지 확인하고 싶습니다. 문제는 내가 이 코드를 어디에 넣고 웹 페이지의 유효성 검사 컨트롤로 가져올 지 알 수 없습니다. [코드가 완료되지 않음].

어떻게하면됩니까?

답변

1

사용자 지정 서버 컨트롤을 유효성 검사 프레임 워크와 통합하는 데는 두 가지 단계가 있습니다.

(1) 서버 측 :

[ValidationProperty("SelectedDate")] 
public class MyDateControl : WebControl 
{ 
    public DateTime? SelectedDate { get { ... } set { ... } } 
} 

(2) 클라이언트 측에 훅하려면 검증 framwework이 유효성을 검사 할 때 보면 무엇을 알 수 있도록 당신이 당신의 클래스에 ValidationPropertyAttribute를 추가해야합니다 유효성 검사를 수행하려면 컨트롤과 연결된 입력 태그가 있는지 확인해야합니다. 이를 수행하는 한 가지 방법은 < 입력 유형 = "숨김">을 웹 컨트롤의 HTML의 첫 번째 자식 태그로 렌더링하는 것입니다. 유효성 확인 프레임 워크가이를 반영합니다. 여기에서해야 할 나머지 작업은 드롭 다운이 하나씩 변경 될 때마다 JavaScript를 통해 숨겨진 필드를 설정하는 것입니다.

이렇게하면 기존의 유효성 검사 컨트롤을 사용할 수 있습니다. 다른 방법으로 유효성을 검사하려면 CustomValidator를 살펴 봐야합니다.

0

CustomValidator 컨트롤을 사용하고 싶습니다. 유효성 검사의 클라이언트 측 및 서버 측 버전을 모두 구현하는 방법을 설명하는 this tutorial을 참조하십시오.

+0

CustomValidator를 내 웹 페이지에 작성해야합니다. 즉, 많은 웹 페이지에서 "Calendar Web User control"을 사용하면 코드 주위에 CustomValidator를 작성해야합니다. 이것은 내가 찾고있는 것이 아닙니다. 필요한 필드 유효성 검사기를 웹 사용자 정의 컨트롤과 연결할 수 있어야합니다. 이것에 필요한 코드는 사용자 정의 컨트롤 안에 있습니다. – SmartStart

+0

이것을 반영하기 위해 질문을 편집 할 수 있습니다. – olle

관련 문제