自动列宽最大显示,不换行的问题 ********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%