모음에 GridRow
(사용자 정의 클래스, 그리드의 행 설명)을 바인딩하는 편집 가능한 표가 있습니다. GridRow
의 속성은 Parameter
(int)
이며 사용자가 편집해야합니다. 그래서 간단한 유효성 검사가 잘 작동합니다 :이 필드에 "text"또는 다른 것과 같은 것을 삽입 할 수 없습니다. 하지만 전체 격자에 대한 유효성 검사가 필요합니다. 그리드의 Parameter
열에는 '1', 2'2 ', 3'3 ', 2'5 '중 하나의 기호 만 사용할 수 있습니다. 예를 들어, 이미 '1,2,3'모눈 값에 삽입하고 '1'을 삽입하려고하면 앱에서 유효성 검사 메시지를 표시해야합니다. 나는 IDataErrorInfo
으로 이것을 시도하지만 세터 전체 테이블에 들어갈 수 없다.WPF 표 유효성 검사
1
A
답변
1
'CellVaildate'이벤트에 가입하면 문제가 해결되었습니다.
1
아마 내가 validating business rules in MVVM에 관한 블로그 기사에 관심이 있으십니까?
ViewModel에서 모델 유효성 검사 코드를 첨부 할 수 있으며 수행하려는 작업을 수행해야합니다.
public class GridViewModel
{
// Kept this generic to reduce code here, but it
// should be a full property with PropertyChange notification
public ObservableCollection<GridRowModel> GridRows{ get; set; }
public UsersViewModel()
{
GridRows = GetGridRows();
// Add the validation delegate to the UserModels
foreach(var row in GridRows)
user.AddValidationErrorDelegate(ValidateGridRow);
}
// User Validation Delegate to verify UserName is unique
private string ValidateGridRow(object sender, string propertyName)
{
if (propertyName == "Parameter")
{
var row = (GridRow)sender;
var existingCount = GridRows.Count(p =>
p.Parameter == row.Parameter && p != row);
switch(row.Parameter)
{
case 1:
if (existingCount >= 0)
return string.Format("{0}s are already taken", row.Parameter);
case 2: case 5:
if (existingCount >= 1)
return string.Format("{0}s are already taken", row.Parameter);
case 3:
if (existingCount >= 2)
return string.Format("{0}s are already taken", row.Parameter);
}
}
return null;
}
}
관련 문제
- 1. WPF 확장기 유효성 검사
- 2. WPF 유효성 검사 - ValidatesOnTargetUpdated
- 3. WPF 데이터 유효성 검사
- 4. WPF - 행 유효성 검사?
- 5. WPF 컨트롤 유효성 검사
- 6. WPF 유효성 검사 컨트롤
- 7. WPF 데이터 유효성 검사
- 8. 고급 WPF 유효성 검사
- 9. WPF 긴 유효성 검사 시나리오
- 10. 유효성 검사 실패 wpf mvvm
- 11. TextBlock에 대한 WPF 유효성 검사
- 12. WPF 4.0 유효성 검사 오류
- 13. WPF 바인딩 및 유효성 검사
- 14. WPF 유효성 검사 결과 팝업
- 15. WPF PropertyGrid에서 유효성 검사 구현
- 16. WPF : 제출시 개체 유효성 검사
- 17. ComboBox 유효성 검사 유효성 검사
- 18. WPF DataGrid 행 유효성 검사 오류 개수
- 19. 액세스 WPF 컨트롤의 유효성 검사 규칙 코드
- 20. WPF DataGrid의 예외 (유효성 검사) 처리
- 21. 데이터 주석 및 wpf 유효성 검사
- 22. WPF 스타일 유효성 검사 트리거 명령
- 23. WPF 데이터 바인딩/URI에 대한 유효성 검사?
- 24. WPF TextBox 컨트롤 필터 + 유효성 검사
- 25. WPF 유효성 검사 사용자 정의 트리거
- 26. 원본 -> 대상 바인딩 유효성 검사 (WPF)
- 27. WPF DependencyProperty 유효성 검사 개체 속성에 바인딩
- 28. WPF : 유효성 검사 오류를 시각적 트리로 전파하십시오.
- 29. WPF 엔터프라이즈 라이브러리 5 유효성 검사
- 30. WPF DataGrid 유효성 검사 오류가 발생하지 않았습니다.