UWP C#文本框的行数

时间:2017-08-10 20:23:21

标签: c# .net string textbox uwp

我有一个带文本框的UWP C#应用程序。我想知道这个文本框中有多少行。我该怎么做? 这是我的文本框:

<TextBox x:Name="textarea"
             IsSpellCheckEnabled="False"
             Margin="12 0 12 0"
             BorderThickness="0"
             TextWrapping="Wrap" 
             AcceptsReturn="True" 
             IsReadOnly="False"
             ScrollViewer.VerticalScrollBarVisibility="Auto" 
             KeyDown="textarea_KeyDown" 
             TextChanged="textarea_TextChanged" KeyUp="textarea_KeyUp"/>

我尝试使用"\n"Environment.NewLine来获取热线,但它并不起作用。我知道RichEditBox,但我想使用TextBox。谢谢你的任何想法。

2 个答案:

答案 0 :(得分:0)

我已经解决了。我在文本框中找到了新行的ascii代码。这是我的解决方案:

private int LineCount()
    {
        int asciiLine = 13;
        char line = (char)asciiLine;
        int numLines = textarea.Text.Split(line).Length;
        return numLines;
    }

答案 1 :(得分:0)

这是我最近处理类似事情的方式 - 以防对这里的任何人有帮助(顺便说一句,如果有人有更好的东西,请插话):

    public static Int32 GetLineCountFromString(string text)
    {
        Int32 lineCount = 0;            
        try
        {
            string[] lines = Regex.Split(text.Trim(), "\r\n");
            lineCount = lines.Length;
        }
        catch(Exception ex){}
        return lineCount;   
    }