日期:2014-05-20  浏览次数:20516 次

自动列宽最大显示,不换行的问题 ********100分送出************

我用datagrid来显示动态的报表,因为报表结果的数据表的列数是不定的,所以我就就用datagrid的属性   AutoGenerateColumns   =True   来自动生成列。

现在我碰到的问题是,不不想让每行的数据自动折行,也就是列宽我要随着字段长度自动调整到最大,不想让句子折行显示。   我设置了所有的item的   Wrap= "False "(见下面的代码),   但还是给我折行了,我就是要让表格每一列撑开到最大,表格也撑开到最大显示。


<asp:DataGrid   id= "dgReport "   runat= "server "   Width= "100% "   HorizontalAlign= "Left "   BorderColor= "Silver "   AutoGenerateColumns   =True   >

<FooterStyle   Wrap= "False "> </FooterStyle>
<SelectedItemStyle   Wrap= "False "> </SelectedItemStyle>
<EditItemStyle   Wrap= "False "> </EditItemStyle>
<AlternatingItemStyle   Wrap= "False "> </AlternatingItemStyle>
<ItemStyle   Wrap= "False "> </ItemStyle>
<HeaderStyle   Font-Bold= "True "   Wrap= "False "   ForeColor= "White "   BackColor= "DarkGray "> </HeaderStyle>
<PagerStyle   Wrap= "False "> </PagerStyle>
</asp:DataGrid>


不知道如何设置?   谢谢各位帮忙!

------解决方案--------------------
把宽度去掉 默认不换行
Datagrid属性--》格式--》普通项--》有个“单元格内文本换行”的checkbox的选项去掉
------解决方案--------------------
这个方法比较复杂,根据内容长度,动态计算列宽
------解决方案--------------------
自定义一个tablestyle,设定100%列宽
------解决方案--------------------
用css写下,不知道可不可以
------解决方案--------------------
Datagrid右键-自动生成属性,格式-普通项-“单元格内文本换行”,绝对没有问题
------解决方案--------------------
Datagrid右键-自动生成属性,格式-普通项-“单元格内文本换行..试一下。
------解决方案--------------------
要用到强类型数据集 你在网上收收看~
------解决方案--------------------
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e) { for(int i=0;i <e.Item.Cells.Count;i++) { e.Item.Cells[i].Wrap = false; } }
------解决方案--------------------
width=100%
------解决方案--------------------
把DATAGRID的width=100% 绝对可以 我试过很多次了

------解决方案--------------------
在dataGrid上点右键,选 "属性生成器 ",选中 "允许排序 "
------解决方案--------------------
width=100%