Multiline for WPF TextBox
Rozwijam aplikację do wysyłania opinii.
W zasadzie staram się zrobić TextBox
dla komentarzy, ale jestem przyzwyczajony do WinForms MultiLine=true
. Ustawiłem MinLines
na 3, który się zbliża, ale najlepiej, jeśli użytkownik jest w stanie wpisać gdziekolwiek w tym bloku - jak nacisnąć enter i zrobić punkty dot coś w tym stylu. Na przykład:
- Item 1 blah
- Item 2 blahlb lahbvl d
Ale w tej chwili tekst pozostaje w jednej linijce.
- Item 1 blah - Item 2 blahb blahb blah
Te komentarze pomogą wypełnić treść wiadomości e-mail, która jest wysłane. Może to być bezcelowe, jeśli nie mogę łatwo zachować tego samego formatowania podczas umieszczania tego ciągu w treści wiadomości e-mail (tak, że wygląda tak, jak robi, gdy jest wysyłany, jak robi, gdy jest pisany).
Czy mogę osiągnąć to, czego chcę, czy muszę zostawić to jako cały tekst w jednej linijce?
4 answers
Włącz TextWrapping="Wrap"
i AcceptsReturn="True"
w swoim polu tekstowym.
Możesz również włączyć AcceptsTab
i SpellCheck.IsEnabled
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-02 07:32:16
Ponadto, jeśli, tak jak ja, dodasz kontrolki bezpośrednio w XAML (nie używając edytora), możesz być sfrustrowany, że nie rozciągnie się do dostępnej wysokości, nawet po ustawieniu tych dwóch właściwości.
Aby rozciągnąć pole tekstowe, Ustaw Height="Auto"
.
UPDATE:
Z perspektywy czasu myślę, że musiało to być konieczne dzięki domyślnemu stylowi dla pól tekstowych określających wysokość do jakiegoś standardu dla aplikacji gdzieś w zasobach aplikacji. Może warto sprawdzam, czy to ci pomogło.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-12 09:51:43
W przeciwieństwie do @ Andre Luus, ustawienie Height="Auto"
nie spowoduje rozciągnięcia TextBox
. Rozwiązaniem, które znalazłem było ustawienie VerticalAlignment="Stretch"
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-06-17 11:53:33
Oto przykład XAML
, który pozwoli TextBox
zaakceptować tekst wielowierszowy i używa własnych pasków przewijania:
<TextBox
Height="200"
Width="500"
TextWrapping="Wrap"
AcceptsReturn="True"
HorizontalScrollBarVisibility="Disabled"
VerticalScrollBarVisibility="Auto"/>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-12-28 08:18:46