当GridView中的列数据较多的时候,GridView在显示的时候会自动排列,默认的是自动换行(条件是表身信息长度超出表头信息时),不是很美观,现在想把所有字段显示的内容都不换行。可以用以下方法:
1.在GridView绑定数据的时候追加样式。迫使自动生成的表格给据样式显示
protected void Page_Load(object sender, EventArgs e)
{
//正常换行
GridView1.Attributes.Add("style", "word-break:keep-all;word-wrap:normal");
//下面这行是自动换行
GridView1.Attributes.Add("style", "word-break:break-all;word-wrap:break-word");
}
2.页面上设置
<asp:BoundField HeaderText="日期" DataField="RECORDER_DATE" SortExpression="RECORDER_DATE">
<HeaderStyle Wrap="false" />
<!--标题不会换行-->
<ItemStyle Wrap="false" />
<!--内容显示的时候不会换行-->
</asp:BoundField>
<asp:BoundField HeaderText="企业" DataField="COMPANY_NAME" SortExpression="COMPANY_NAME">
<HeaderStyle Wrap="false" />
<!--标题不会换行-->
<ItemStyle Wrap="true" />
<!--内容显示的时候会换行-->
</asp:BoundField>
3.在gvlist_RowDataBound()函数中为显示的数据单元格增加换行属性
e.Row.Cells[1].Attributes.Add("style", "word-break: break-all; work-wrap: break-word;overfloat:hidden");
e.Row.Cells[2].Attributes.Add("style", "word-break: break-all; work-wrap: break-word;overfloat:hidden");