2011-02-16 4 views
1

난 그냥 궁금해서 .. 내 응용 프로그램에서 나는 라벨을 사용하는 대신 "readonly and borderless"텍스트 박스를 사용하고있다. 텍스트 상자는 내 리소스 파일에 보관 된이 스타일을 기반으로합니다.WPF : 다른 사람이 레이블 대신 텍스트 상자를 사용하고 있습니까?

<Style TargetType="{x:Type TextBox}" x:Key="LabelLeftStyle" BasedOn="{StaticResource Basic}"> 
     <Setter Property="Background"  Value="Transparent"/> 
     <Setter Property="FontWeight"  Value="Bold"/> 
     <Setter Property="IsReadOnly"  Value="True"/> 
     <Setter Property="BorderThickness" Value="0"/> 
     <Setter Property="Height"   Value="Auto" /> 
     <Setter Property="Width"   Value="Auto" /> 
     <Setter Property="MinWidth"  Value="155"/> 
     <Setter Property="IsTabStop"  Value="False"/> 
    </Style> 

그냥 궁금 해서요. WPF 레이블을 사용하기가 어려웠습니다.

답변

3

Use TextBlocks instead of Labels. 일반적으로 양식 필드에 묶여

  • TextBox = 편집 가능한 텍스트 필드
  • Label = 편집 할 텍스트
  • TextBlock = 일반 편집 할 텍스트
+0

또 하나의 포인트 : 텍스트 상자 = 편집 할 텍스트 만 선택 (HTTP를

어쨌든, Label과 같은 컨트롤이 존재하는 이유가 무엇인지 설명 TextBlockLabel의 차이에 대한 좋은 기사가있다 : //stackoverflow.com/a/2506504/13441) – sergtk

1

여러 개의 WPF 응용 프로그램에서 정적 텍스트 표시에 문제없이이 내용을 광범위하게 사용하면 TextBlockLabel을 광범위하게 사용할 수 있습니다. Label은 사용하기 어려웠습니까? 아마도 특정 문제를 나열하면 몇 가지 지침을 제공 할 수 있습니다.

1

이 텍스트 상자를 사용하여 선택한 정말 이상하다 (특수한 방식으로) 레이블 위에. 텍스트 상자는 다른 용도로 디자인 되었기 때문에 일반적으로 TextBlock 또는 Label 중 무엇을 사용할지 선택합니다.

레이블을 사용하기가 어려운 이유는 언급하지 않았습니다 ... 레이블에 기본적으로 여분의 여백이 있기 때문에 그것이 응용 프로그램의 모든 레이블에 대한 스타일로 쉽게 수정 될 수 있습니다. http://joshsmithonwpf.wordpress.com/2007/07/04/differences-between-label-and-textblock/

관련 문제