Rhy*_*ous 11
TextBlock没有MaxLength,Label也没有.TextBox有.除非您对其进行了修改,否则用户无法输入TextBlock.
它真的是你想要限制的TextBlock还是你的意思是TextBox?如果是TextBox,您只需使用MaxLength属性即可.
<TextBox Name="textBox1" MaxLength="5" />
Run Code Online (Sandbox Code Playgroud)
如果它确实是一个TextBlock,你正在使用它并以某种方式允许用户输入数据,然后切换到使用TextBox.如果它是您所使用的TextBlock样式,则可以将TextBox设置为看起来像TextBlock.
如果不创建自定义控件,您可以选择一些选项.
您可以尝试TextBlock确切地调整大小以适合您的预期文本,但是这会很快变得难以尝试考虑不同的输入或不同的字体大小.
相反,您可以验证要分配给TextBlock.Text属性的字符串的字符长度,并在必要时对其进行限制.
string s = "new text";
if (s.Length > maxLen)
textBlock1.Text = s.Substring(0, maxLen);
else
textBlock1.Text = s;
Run Code Online (Sandbox Code Playgroud)
另一种选择是使用TextWrapping和TextTrimming属性.可以将以下属性添加到TextBlockxaml以添加换行,并使用"..."表示文本的大小超出了TextBlock.
<TextBlock ... TextWrapping="Wrap" TextTrimming="CharacterEllipsis" />
Run Code Online (Sandbox Code Playgroud)
您可以使用文本块的“TextTrimming”属性。设置 TextTrimming = "CharacterEllipsis"。您可能需要使用Width来管理您真正想要显示的字符数。
<TextBlock TextTrimming="CharacterEllipsis" Text="{Binding Subject}"/>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
21530 次 |
| 最近记录: |