我爱Aspx >> Asp.Net >> table的宽度,单元格内换行问题Asp.net的DataGrid有个问题,它的Column有个属性ItemStyle.Wrap,设计是当这个列的ItemStyle.Wrap属性为true时,单元格允许回行,为false不允许回行,可是当设置了为false时输出到客户端的是这样的:
<td nowrap=”nowrap”>
而不是
<td nowrap=”true”>
所以ItemStyle.Wrap属性是没有起作用的,请自己手工在DataGrid1_ItemDataBound事件中将不允许回行的那些单元增加个Attribute: nowrap=true。
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
e.Item.Cells[n].Attributes.Add("nowrap"," true ") ;
}
三. 截断英文单词强行回行
上面两个方法可以把表格的宽度都固定了,每个单元是否允许回行都可以设定了,现在可能又会碰到一个问题,当允许回行的遇到比较长的英文单词,可能就超出了这个单元格的宽度,要是不把这个单词从中截断强行换行的话,这个单词的超出单元格宽的的部分将不被显示出来。所以需要在单词超出单元格长度的地方把单词强行截断回行。
可以利用css中的word-break 风格来达到我们的目的:
<TABLE id="Table1" style="TABLE-LAYOUT:fixed;word-break:break-all" border="1">
或在脚本中:
this.style. wordBreak = break-all
HTML
{ word-break : sBreak }
Scripting
object.style.wordBreak [ = sBreak ]
可能的值:
sBreak
String设置或获取一个下面的值:
normal
缺省值. 允许从每个词处回行。
break-all
不管在什么位置,超过列宽时就回行。
keep-all
不允许 Chinese, Japanese, 和 Korean 回行。这个功能类似与“normal” 的非亚洲语言版本。
Ҷƪл˵?
存储过程入门与提高[05-20]
ASP.NET应用程序设计的10大技巧[05-20]
ASP.NET应用程序设计的10大技巧[05-20]
用C#读取图片的EXIF信息的方法[05-20]
用Visual C#实现文件下载[05-20]
使用C#调用外部Ping命令获取网络..[05-20]
使用C#控制远程计算机的服务[05-20]
使用C#编写的一个定时关机程序[05-20]
得到系统进程和结束某个指定的进..[05-20]
C#处理鼠标和键盘事件[05-20]