WPF 텍스트 상자의 다중 회선
저는 피드백을 보낼 수 있는 앱을 개발하고 있습니다.
기본적으로 나는 만들기 위해 노력하고 있습니다.TextBox
설명을 위해, 하지만 나는 WinForms에 익숙합니다.MultiLine=true
설정했습니다.MinLines
3까지, 거기에 도달할 것이지만, 사용자가 이 블록의 아무 곳이나 입력할 수 있다면 좋을 것입니다. 예를 들어 Enter 키를 누르고 도트 포인트 같은 것을 할 수 있습니다.예:
- Item 1 blah
- Item 2 blahlb lahbvl d
그러나 현재 텍스트는 모두 한 줄에 머물러 있습니다.
- Item 1 blah - Item 2 blahb blahb blah
그러면 이러한 설명은 전송된 전자 메일 본문을 채우는 데 도움이 됩니다.이 문자열을 전자 메일 본문 문자열에 넣을 때 동일한 형식을 쉽게 유지할 수 없다면 의미가 없을 수 있습니다(입력할 때와 마찬가지로 전송할 때와 동일하게 표시됨).
원하는 것을 달성할 수 있습니까? 아니면 한 줄에 모두 텍스트로 남겨야 합니까?
가능하게 하다TextWrapping="Wrap"
그리고.AcceptsReturn="True"
텍스트 상자에 있습니다.
사용하도록 설정할 수도 있습니다.AcceptsTab
그리고.SpellCheck.IsEnabled
너무.
또한 저처럼 XAML에 직접 컨트롤을 추가하면(편집기를 사용하지 않고) 해당 두 속성을 설정한 후에도 사용 가능한 높이까지 확장되지 않아 답답할 수 있습니다.
TextBox를 확장하려면 다음을 설정합니다.Height="Auto"
.
업데이트:
돌이켜보면, 앱 리소스의 어딘가에 있는 애플리케이션의 높이를 어느 정도 표준으로 지정하는 텍스트박스의 기본 스타일 덕분에 이것이 필요했을 것이라고 생각합니다.이것이 당신에게 도움이 되었다면 이것을 확인해 볼 가치가 있을 것입니다.
여기 샘플이 있습니다.XAML
그것이 허락할 것TextBox
여러 줄 텍스트를 허용하고 자체 스크롤 막대를 사용합니다.
<TextBox
Height="200"
Width="500"
TextWrapping="Wrap"
AcceptsReturn="True"
HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto"/>
WPF에 해당하는 유일한 속성은 다음과 같습니다.
Winforms 속성:TextBox.Multiline = true
는 WPF 속성입니다.
TextBox.AcceptsReturn = true
또는
<TextBox AcceptsReturn="True" ...... />
다음과 같은 다른 모든 설정VerticalAlignement
, WordWrap
등, TextBox가 UI에서 상호 작용하는 방식만 제어할 뿐 영향을 미치지 않습니다.Multiline
행동
@Andre Luus와 반대로 설정 Height="Auto"
성공하지 못할 것입니다.TextBox
늘이다.제가 찾은 해결책은VerticalAlignment="Stretch"
언급URL : https://stackoverflow.com/questions/2650144/multiline-for-wpf-textbox
'programing' 카테고리의 다른 글
Mongoose(MongoDB)를 사용하여 중첩된 문서 쿼리 (0) | 2023.05.07 |
---|---|
Git에서 오리진/마스터와 오리진 마스터의 차이점은 무엇입니까? (0) | 2023.05.07 |
pip을 사용하여 Windows에 PyQt4를 설치하는 방법은 무엇입니까? (0) | 2023.05.02 |
bash에서 &>는 무엇을 합니까? (0) | 2023.05.02 |
보다 더 좋은 것.NET 리플렉터? (0) | 2023.05.02 |