WPF'de hala doğrulama ile mücadele ediyorum.İlk Yükte Doğrulama Bağlaması
Metin kutusuna metin girilmesini gerektiren özel bir doğrulama kuralım var, yani zorunlu bir alan kısıtlaması zorlar. Pencere ilk yüklendiğinde, TextBox metin olduğunda (beklediğiniz gibi) o
<TextBox local:Masking.Mask="^[a-zA-Z0-9]*$" x:Name="CameraIdCodeTextBox" Grid.Row="1" Grid.Column="1">
<Binding Path="CameraIdCode" Mode="TwoWay" UpdateSourceTrigger="PropertyChanged" NotifyOnValidationError="True" ValidatesOnExceptions="True">
<Binding.ValidationRules>
<localValidation:RequiredFieldRule />
</Binding.ValidationRules>
</Binding>
</TextBox>
sorundur. Ancak, Text özelliği, ViewModel'deki bir özelliğe bağlı durumdadır ve bu nedenle, doğrulama kuralı Windows ile ilgili bir sorun olduğunu belirten doğrulama kuralıdır - kullanıcı bir iş kuralını ihlal etme fırsatından bile önce.
Bu daha önce çözülmüş bir sorun mu? Bunu deneyimleyen ilk kişi olamam. Eminim genç oyuncular için bir tuzaktır.
Şunları yapabilirsiniz ... UpdateSourceTrigger = "LostFocus" –
Bir doğrulama grubu oluşturabilir ve yalnızca kullanıcı bir alan için ilk değişiklik yaptığında etkinleştirebilirsiniz. –
@AngelWPF Bunu denedim. Pencere yüklendiğinde hala ilk bağda doğrular. – onefootswill