0
UserControl
이 내 뷰 모델에 묶여 있습니다. 보기 모델 구현은 IDataErrorInfo
입니다. UserConrol
은 Validation.ErrorTemplate
입니다. 내가 (예 : ComboBox
의 선택이) 몇 가지 속성을 변경하면WPF UserControl 유효성 확인 문제
<UserControl.Style>
<Style TargetType="{x:Type UserControl}">
<Setter Property="Validation.ErrorTemplate">
<Setter.Value>
<ControlTemplate>
<DockPanel>
<AdornedElementPlaceholder x:Name="adorner">
<Image x:Name="imgError"
Width="32"
Height="32"
Margin="5"
HorizontalAlignment="Left"
VerticalAlignment="Bottom"
ToolTip="{Binding ElementName=adorner,Path=AdornedElement.(Validation.Errors),Converter={StaticResource ValidationErrors2TooltipConverter},ConverterParameter='Couldn't save hour work:'}"
Source="{StaticResource ErrorDrawingImage}" />
</AdornedElementPlaceholder>
</DockPanel>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</UserControl.Style>
:이 템플릿에서 나는 오류 툴팁을 보여 변환기를 사용, 오류의 수를 변경해야하지만, 그렇지 않습니다. ToolTip
에서 오류를 새로 고치는 방법을 찾지 못했습니다.
질문 :
- 어떻게
ToolTip
오류를 새로 고칠 수 있습니다. - 유효성 검사는
UserControl
에서 올바르게 작동하지만 내부 부품에서는 작동하지 않습니다.UserControl
의 구성 요소에 대해Validation.ErrorTemplate
을 정의했지만 표시되지는 않지만 컨트롤은 뷰 모델 (IDataErrorInfo
)에 묶여 있습니다.
그래서 각 컨트롤에 대해 'IDataErrorInfo'를 구현하는 자체 뷰 모델을 생성해야합니까? 두 번째 문제는 해결 될지도 모르지만 우선은 어떨까요? –
다음은 좋은 자습서입니다. http://codeblitz.wordpress.com/2009/05/08/wpf-validation-made-easy-with-idataerrorinfo/ –
여러 모델을 작성해야한다고 생각하지 않지만 ValidationError는 각 컨트롤에 대해 정의됩니다. –