我有 3 个字符串,我想将它们放在 3 行的标签中。标签是塞进去的,需要固定高度,所以我只希望每个字符串占 1 行。也就是说,我想将每个字符串的长度保持在 ~20 个字符。问题是,我得到一个异常抛出的字符串是 < 20 个字符,所以我需要在将它写入标签之前评估它是否是。
我尝试的是:
mobPartLabel.Text = String.Format(
"String 1: {0} \nString 2: {1} \nString 3: {2}",
(string1.Length >= 20 ? string1.Substring(0, 19) : string1),
(string2.Length >= 20 ? string2.Substring(0, 19) : string2),
(string3.Length >= 20 ? string3.Substring(0, 19) : string3));
显然,这没有奏效。:-\ 但这基本上是我想要实现的。请原谅这个无聊的问题;我是使用三级运算符的新手。我知道它们是什么以及它们做什么,但是直到现在我还没有找到实施的理由>_>
有没有人对我在这里可能做错的事情有任何建议,或者如果这完全不可能,那么有什么更好的方法?
编辑使用此代码
string string1 = "Rawr";
string string2 = "Rawr2";
string string3 = "Rawr3";
mobPartLabel.Text = String.Format(
"String 1: {0} \nString 2: {1} \nString 3: {2}",
(string1.Length >= 20 ? string1.Substring(0, 19) : string1),
(string2.Length >= 20 ? string2.Substring(0, 19) : string2),
(string3.Length >= 20 ? string3.Substring(0, 19) : string3));
我所有的标签都是“字符串 1:”,就是这样。那是完整而完整的标签。:(