를 사용할 때 작동하지 바인딩 내 문제입니다. 텍스트 상자는 double 속성에 바인딩됩니다. 원래 사용자가 소수점이있는 숫자를 입력하면 숫자가 1 일 때 모든 키 스트로크 이후에 업데이트 할 때 충돌하기 때문에 충돌이 발생합니다. 자동으로 1 (소수점 제거)로 변경되고 10 진수 다음에 다음 숫자를 추가 할 때 새 문자를 삽입하는 위치는 위치 3이라고 생각하지만 십진수는 자동으로 제거되었으므로 더 이상 위치가 잘못되었습니다. 3 오류가 있습니다. xaml에 StringFormat={}{0:d}
을 추가하여이 문제를 해결했습니다. 이것은 모든 것이 처음으로로드 될 때 원래 값이 더 이상 나타나지 않는다는 사실을 제외하고는 정상적으로 작동했습니다 (데이터베이스의 값). 하지만 StringFormat 만 제거하면 값이로드되지만 다시 충돌 문제가 발생합니다.WPF 텍스트 상자는 여기에있는 StringFormat
아이디어가 있으십니까?
테스트<TextBox Grid.Column="1" Margin="0" VerticalAlignment="Top"
Controls:TextBoxMask.NumericType="Double"
Text="{Binding Path=Model.Processor.BulkShiftInMilliseconds, UpdateSourceTrigger=PropertyChanged, StringFormat={}{0:d}}"/>
Visual Studio 출력 창을 보셨습니까? 일반적으로 거기에있는 바인딩 오류를 해결하는 데 유용한 정보를 찾을 수 있습니다. –
내가 한 것 : 'StringFormat'변환기가 '1'값 ('Double'유형)을 변환하지 못했습니다. –