.net 向标签添加新行

wz3gfoph  于 2023-04-07  发布在  .NET
关注(0)|答案(6)|浏览(106)

我从数据库中获取数据并在标签上显示数据。我必须为每35个字符在标签的文本上应用新的一行。因为在35个字符之后文本溢出。
你能告诉我怎么做吗。

qlckcl4x

qlckcl4x1#

只需更改标签的样式,使其包含文本:

style=" width:50px; overflow-y:auto;overflow-x:auto; word-break:break-all;"

更好的是,将其放在CSS文件中,而不是直接放在控件上。
另一个选择,如果你不喜欢这样,是使用一个文本框,并将其样式作为一个标签,如this帖子所述。

ntjbwcob

ntjbwcob2#

没有办法做到这一点,你最好创建更多的标签。你可以添加<br/>,但asp.net会屏蔽它。考虑将单个标签放入固定宽度的div中,文本将自动转到新行。

dwbf0jvd

dwbf0jvd3#

快速伪码

string s = 'value from db';
string s2 = "";
int len = s.Length;
int i = 0;
while ( i + 35 > len ) {
  s2 += s.Substring( i, 35 ) + "\r\n";
  i+=35;
}
s2 += s.Substring( i, len - i );
label.Text = s2;

如果\r\n不起作用,请将其替换为< br >

jobtbby3

jobtbby34#

//assuming l is a label
for (int i = 0; i < l.Text.Length; i++)
{
  if (i % 35 == 0)
    l.Text.Insert(i, Environment.NewLine) // or use "<br />" for html break since browsers ignore whitespace (except IE 6 in some cases)
}
cgvd09ve

cgvd09ve5#

在属性窗口中你可以改变标签的宽度和高度。你应该根据窗口的大小和标签类型的大小设置标签的大小。

nkcskrwz

nkcskrwz6#

use Environment.NewLine

相关问题