2016-12-25 9 views
4

TextBox 구성 요소가있는 WPF 응용 프로그램을 개발하고 있습니다.WPF TextBox 캐럿 사라짐

텍스트 상자의 캐럿에 문제가 있습니다.

Caret showing

캐럿이 사라집니다 :

Caret disappears

캐럿 반환 TextBox 자체의 위치에 따라 캐럿 특정 특정 위치에

캐럿 보여주는를 사라 보인다 :

enter image description here

TextBox 스타일은 매우 간단하다 : 나는 심지어 고정 폭 글꼴, 같은 일이다 Courier New에 글꼴을 설정하는 시도

<Style TargetType="{x:Type TextBox}" x:Key="FormTextBox"> 
    <Setter Property="Width" Value="464"/> 
    <Setter Property="Height" Value="74"/> 
    <Setter Property="HorizontalAlignment" Value="Left"/> 
    <Setter Property="FontFamily" Value="Microsoft Sans Serif"/> 
    <Setter Property="FontSize" Value="43.2"/> 
    <Setter Property="MaxLength" Value="50"/> 
</Style> 

.

+0

텍스트 변경에 대한 이벤트 핸들러가 있습니까? 이 간단한 wpf 응용 프로그램에서 재현 할 수 없습니다 – CharithJ

+0

아니요,하지만 'UserControl' 포함 된 창에서 다중 해상도를 지원하기 위해 http://stackoverflow.com/a/19579704/975959이 있습니다 –

답변

3

문제는 일반적으로 (1, 2) 스케일 변환을 사용하는 것으로 보입니다.이 변환은 주석에서 언급 한 동작에 의해 적용됩니다.

mainElement.LayoutTransform = scaleTransform; 

그리고 MSDN에서

는이 문제에 대한

효과적인 해결책이 없습니다.

따라서 다중 해상도를 지원하려면 ViewBox을 권장합니다. 간단하고 일을해라.

+1

감사합니다, 시도해 보았습니다. Behavior를 ViewBox로 대체했지만 Caret 문제를 해결하지 못했지만 때때로 누락되었습니다. –