Programming/.NET
ValidationSummary 는 유효성검사를 직접적으로 수행하는 컨트롤이 아닌 유효성검사 결과에 대한 내용을 사용자에게 좀더 잘 전달될 수 있도록 제어하는 컨트롤입니다.
2 + 3 = <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="틀렸습니다." ControlToValidate="TextBox1" OnServerValidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
<asp:ValidationSummary ID="ValidationSummary1" runat="server" />
ValidationSummary 사용을 위해서는 해당 컨트롤을 메세지가 보여질 위치에 적당히 배치시키기만 하면 됩니다.
protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
{
    if (int.Parse(args.Value) != 5) {
        args.IsValid = false;
    }
}
그러면 유효성 검사가 실패하는 경우 유효성검사컨트롤에 지정된 ErrorMessage 속성값을 ValidationSummary 컨트롤이 위치한 영역에 출력하게 됩니다.


 주요속성/이벤트

(1) Text

VaildationSummary 컨트롤이 아닌 유효성검사 컨트롤에 지정하는 속성으로 만약 유효성검사컨트롤의 에러메세지와 ValidationSummary 에서의 에러메세지를 달리하고자 한다면 유효성검사컨트롤에서 따로 표시할 에러메세지 내용을 Text 속성에 지정하면 됩니다.

참고로 Text 나 ErrorMessage 는 단순한 문자열 내용뿐만 아니라 html 태그자체도 포함할 수 있습니다. 이 특성을 이용하면 오류 내용을 글이 아닌 img 와 같은 태그를 이용한 이미지나 기타 다른 방법으로도 오류내용을 표시할 수 있게 됩니다.
Text='<span style="color:red">정답아님.</span>' ErrorMessage='<span style="color:blue">틀렸습니다.</span>'
다만 해당 html 내용을 포함하고자 하는 경우에는 속성을 지정할때 "(쌍따옴표)를 사용하지 않습니다. 이 특성은 Text 와 ErrorMessage 속성을 지원하는 모든 유효성검사 컨트롤에서 유효합니다.

(2) HeaderText

에러메세지 내용을 출력할때 제목을 지정할 수 있습니다.

(3) DisplayMode

에러메세지 내용을 출력할때 에러리스트 형태를 지정합니다.

(4) ShowSummary

ValidationSummary 에서 이 속성을 false 로 지정하면 오류내용을 페이지에 표시하지 않습니다.

(5) ShowMessageBox

오류내용을 MessageBox (alert) 형태로 출력합니다.
0 0