我想将我的标签限制为最多1000个字符。 怎么实现这个? 请帮忙......
答案 0 :(得分:3)
无法限制标签的长度,但由于标签没有用户输入,您可以限制分配给它的字符串属性。
string s = "long string...";
if (s.length > 1000){
s = s.SubString(0, 1000);
}
lblMyLabel.Text = s;
答案 1 :(得分:3)
Tyr这段代码:
string str = "Characters...";
if(str.length > 1000)
{
str = str.SubString(0, 1000);
}
lbl.Text = str;
答案 2 :(得分:2)
正如@Curt已经提到的那样,标签上没有直接的用户交互(例如文本框上有),所以你应该限制服务器上的字符串长度。
作为已经给出的答案的额外一点,这是我使用的代码...
public string FormatText(string text, int len, string suffix)
{
if (len != -1 && text.Length > len)
{
int pos = text.LastIndexOfAny(" ,.".ToCharArray(), len);
if (pos == -1)
pos = len;
text = text.Substring(0, pos) + suffix;
}
return text;
}
然后你可以打电话给......
lblMyLabel.Text = FormatText(myText, 1000, "...")
这样做可以阻止中间被切断的字样,希望可以防止不幸的情况发生。例如,文本可能包含he is an assistant
,而正好是1000个字符,它会生成he is an ass
。我的代码将输出he is an...
答案 3 :(得分:1)
标签不是输入,但如果您知道超出限制,则可以将长度减少到1000个字符。
const int limit = 1000;
label.Text = label.Text.Length>limit ? label.Text.SubString(0,limit) : label.Text;
假设您的标签名为标签