위치 판독 값이 매우 간단합니다. 스타일이 적용된 TextBlock 일뿐입니다. 그래서 (이보다 더 많은 속성이 있습니다,하지만 간결하게 그들을했다) 좋아하는 스타일, 난 그냥 설정 :WPF에서 숫자 디스플레이 패딩
<Style x:Key="NumberStyle" TargetType="{x:Type TextBlock}">
<Setter Property="TextAlignment" Value="Center" />
</Style>
지금, 나는이 스타일을 사용하여 하나의 디스플레이를 가지고 있고, 그것은 표시됩니다 0.0에서 30000.0 사이의 숫자입니다. 문제는 내가 텍스트 중심에 있기 때문에 숫자가 (급격하게 변화하는 경우) 숫자가 그 곳으로 점프하고 조금 불안해한다는 것이다. 내 문자열을 형식화하여 그렇게하지 않도록하고 싶습니다.
나는 XAML에서이 ConverterParameter 시도 :ConverterParameter='\{0:00000.0\}'
를하고 제대로 패딩을 수행하는 동안, 나는 00032.5 같은 번호를 얻을 것이다. 그런 다음 0
을 #
으로 바꿨지 만 결국 {0:0.0}
처럼 작동합니다. 나는 MSDN docs을보고 도와 줄만한 다른 것을 보지 못했습니다.
내가 할 수있는 유일한 일은 이렇게하기 위해 새로운 IValueConverter를 작성해야한다는 것입니다. 다시 말해 Convert() 메서드에서 parameter
을 가져 와서 내 자신의 특수 문자로 파싱해야합니다. 그리고 이것을 발견하면 빠진 숫자를 공백으로 대체하십시오.
그러나 실제로 여기서 배우려고하는 것은 내가 알지 못하는 형식 문자열에서 다른 문자를 사용하여이 작업을 수행 할 수 있습니까?
앞에 {무엇이 있는지 확실하지 않습니다. 나는 오타라고 가정합니다. 컴파일러 오류가 발생하기 때문에 ... – Dave
'{'문자가 새 태그 확장을 시작하는 WPF Binding 태그 확장에서 형식 매개 변수를 이스케이프합니다. 나는 당신이 마크 업 확장에서 이것을 사용하고 있다고 생각했다. 그렇지 않다면 그냥 제거하십시오. – codekaizen