2015-12-16 91 views
2

我想將我的多行TextBox中允許的行數限制爲3.我嘗試過使用MaxLines,但這並未解決我的問題。WPF如何限制多行文本框中的最大行數

我試着這樣做:

<TextBox TextWrapping="Wrap" AcceptsReturn="True" MaxLines="3"/> 

不過,我還是可以打回車鍵,並添加超過3行文字。

回答

-2

JQuery的解決方案檢查新線路鍵,如果當前的行數文本框的最大行數相匹配,沒有新線插入

function limitTextareaLine(e) { 
if(e.keyCode == 13 && $(this).val().split("\n").length >= $(this).attr('rows')) { 
    return false; 
} 

}

Limiting number of lines in textarea

+0

很抱歉,但問題是關於XAML,WPF – pixel

0

我認爲你必須使用LineHeight,MaxHeight and TextTrimming進行設置。和下面的代碼將3線

<TextBlock 
    Width="300" 
    TextWrapping="Wrap" 
    TextTrimming="WordEllipsis" 
    FontSize="24" 
    LineStackingStrategy="BlockLineHeight" 
    LineHeight="28" 
    MaxHeight="84">YOUR TEXT</TextBlock> 
+0

抱歉,文本框沒有線高也不LineStackingStrategy – pixel

+0

是否使用WPF本身? –

+0

是的,但我認爲你正在TextBlock與TextBox混合。我很樂意使用TextBlock,但會試一試。謝謝 – pixel

0

這個工作對我工作

<TextBox 
    Text="Initial text in TextBox" 
    Width="200" 
    AcceptsReturn="True" 
    TextAlignment="Center" 
    TextWrapping="Wrap" 
    MaxLength="500" 
    MinLines="1" 
    MaxLines="3" />