순수하게 선언적으로 ASP.NET GridView에서 유효성 검사를 활성화 할 수 있습니까?ASP.NET GridView - 선언적으로 유효성 검사를 활성화하는 방법
나는 시도했다 :
경우 SelectMethod 및 UpdateMethod과 ObjectDataSource를 결합한의 GridView는
을 정의의 GridView 일부 읽기 전용 BoundField 열 및 그 EditTemplate는 텍스트 상자와 포함 된 TemplateField을 포함 TextBox에서 숫자 입력 만 허용하는 RegularExpressionValidator입니다.
GridView에는 또한 ShowEditButton = true 및 CausesValidation = true 인 CommandField가 있습니다.
난 다음, 잘못된 값을 입력, 편집을 클릭 저장 클릭하면
는, 거기에 다시 게시하고, 예외가 (입력 문자열이 올바른 형식이 아니었다) 서버에서 발생합니다.서버의 RowUpdating 이벤트 처리기에 유효성 검사 코드를 추가하여이 문제를 피할 수 있지만 (아래 참조)이 코드를 추가하지 않고 유효성 검사를 강제하는 선언적 방법이 있습니까?
protected void MyGridView_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
Page.Validate("MyValidationGroup");
if (!Page.IsValid)
{
e.Cancel = true;
}
}
서버 측 유효성 검사가 필요하다는 것을 알고 있습니다. 제 질문은 선언적으로 사용할 수 있는지 여부입니다. 추가 할 필요가있는 동일한 상용구 코드의 양을 줄이려고합니다. 그러나 당신이 옳다고 생각합니다 : GridView 및 유사한 클래스에는 "ValidationGroup"속성이 없으며,이 항목이 없으면 유효성 검사가 필요한 항목을 알지 못합니다. – Joe