如何抑制DataGrid中的虚假换行符?

时间:2013-01-11 14:04:20

标签: asp.net datagrid

我有一个像这样创建的DataGrid: -

<asp:DataGrid id="myGrid"
              BorderWidth="1"
              CellPadding="3"
              AutoGenerateColumns="true"
              runat="server"
              OnSelectedIndexChanged="myGridSelectedCallback">
    <HeaderStyle CssClass="subHeader"></HeaderStyle >
    <Columns>
        <asp:ButtonColumn HeaderText=""
                          ButtonType="LinkButton"
                          Text="Display"
                          CommandName="Select">
        </asp:ButtonColumn>
     </Columns>
 </asp:DataGrid>

并在代码隐藏中添加列,如下所示: -

 DataTable dt = new DataTable();
 dt.Columns.Add(new DataColumn("MyCol", typeof(string)));

但是当我向其添加行时,有时列中的文本会换行到另一行。这似乎没有任何理由;列的MaxLength为-1,并且添加的字符串中没有换行符或其他控制字符。

我想要发生的是将列加宽以容纳其中最长的字符串(字符串只有~20个字符左右)。我无法找到任何相关内容,因为其他人似乎都有相反的问题。

(此网格包含在div中,但div没有最大宽度。)

1 个答案:

答案 0 :(得分:1)

尝试使用HeaderStyle-Wrap="False"

<asp:DataGrid id="DataGrid1" runat="server">
    <Columns>
        <asp:BoundColumn HeaderStyle-Wrap="False"></asp:BoundColumn>
        <asp:TemplateColumn HeaderStyle-Wrap="False"></asp:TemplateColumn>
    </Columns>
</asp:DataGrid>

另外,您可以查看:DataGrid Web Server control wraps when the ItemStyle Wrap property or the HeaderStyle Wrap property is set to false in Visual Basic .NET