2012-10-11 40 views
0

我身边这方面的工作得到一个解决方案,网格视图大小随数据大小而变化?

> <asp:GridView ID="GridView1" runat="server" EnableViewState="False" 
> BorderWidth="1" 
>      HorizontalAlign="Left" HeaderStyle-BackColor="#5c7990" CellPadding="4" ForeColor="#333333" 
>      AutoGenerateColumns="false" GridLines="None" DataKeyNames="ID" AutoGenerateDeleteButton="false" 
>      EmptyDataText="No records found" CssClass="GridView123" Width="90%" 
>      OnRowCreated="GridView1_RowCreated"> 
>      <HeaderStyle CssClass="GridHeader" /> 
>      <FooterStyle CssClass="GridFooter" /> 
>      <RowStyle CssClass="RowStyle" VerticalAlign="Top" Wrap="true" /> 
>      <AlternatingRowStyle CssClass="AlternateRowStyle" VerticalAlign="Top" Wrap="true" /> 
>      <Columns> 
>       <asp:BoundField DataField="ID" HeaderText="ID" ItemStyle-Width="20%"> 
>        <ItemStyle Width="20%"></ItemStyle> 
>       </asp:BoundField>       
>       <asp:TemplateField HeaderText="Name" ItemStyle-Width="100%" ItemStyle-Wrap="true"> 
>        <ItemTemplate> 
>         <span id="PName<%# Eval("ID") %>"> 
>          <%# Eval("Name") %></span> 
>        </ItemTemplate> 
>        <ItemStyle Wrap="True" Width="100%"></ItemStyle> 
>       </asp:TemplateField> 
> 
> </columns> 
<asp:GridView> 

这是我网格视图。我的问题是gridview的宽度正在改变不同的数据。当列中有大量数据时,它正在扩展,当列填充小数据时,它正在缩小。

我已经申请包裹的东西列太

我想有这将始终如一地显示在独特的尺寸什么都该数据填充网格视图。

感谢您的帮助...

+0

请检查这个URL。这会帮助你。 http://stackoverflow.com/questions/7789765/set-the-fix-column-width-in-gridview-and-if-content-is-bigger-than-the-column-wi – ravidev

回答

0

<asp:GridView ...的宽度从Width="90%"设置为Width="640",这使得它成为640像素的标准宽度。

要强制文本翘曲而不会增长,您还需要不要将ItemStyle-Wrap设置为true,并且不要使用ether,否则请将其设置为false。

ItemStyle-Wrap="false"

0

你有很多冗余的宽度属性。您不需要在BoundField和ItemStyle中为同一列声明它。然而,我相信你遇到问题的原因是因为你正在设置一个120%的。

我在使用HTML的无数个小时中发现的情况是,在表列上使用百分比宽度时,不要超过100%,并始终保留1列,而不是宽度。即使你把所有的列加起来达到100%的宽度,我也会看到表格有点奇怪。我通常在除了“主”列之外的所有区域上定义宽度,并让剩余的宽度。

相关问题