我想控制gridview的列的宽度,可是没有办法实现,也查了很多资料了,哪个XD搞定了这个问题,麻烦提供一下您的解决方案,谢谢.

解决方案 »

  1.   

    很简单的吧!
    <asp:BoundField DataField="id" HeaderText="ID" SortExpression="ID">
                            <ItemStyle Width="40px" />
                        </asp:BoundField>
    这样就行了哦!
      

  2.   

    <asp:TemplateColumn HeaderText= 
    <HeaderStyle Width="1%" />
    </asp:TemplateColumn>
      

  3.   

    <asp:GridView ID="gvTest" runat="server" AllowPaging = "True" 
                            onpageindexchanging="gvTest_PageIndexChanging">
                            <Columns>
                                <asp:BoundField>
                                    <ItemStyle Width="50px" />                            </asp:BoundField>
                            </Columns>
                        </asp:GridView>前提是你要把需要改变的列写出来```````````,如果说前面什么都不写,那么只能在后台写了,但那样比较麻烦`````````````
      

  4.   

    wrap   可控制是否换行!!!
      

  5.   

    谢谢,这是我前台的代码:
                   <asp:GridView  ID="TestRecordGridView" runat="server" onrowdatabound="RowDataBound" OnRowCreated="RowCreated">
                         <Columns>
                            <asp:BoundField HeaderText="试验编号" DataField="ID" HeaderStyle-Width="31" ItemStyle-Width="31" FooterStyle-Width="31" HeaderStyle-Wrap="false" ItemStyle-Wrap ="false" ItemStyle-CssClass="GridLineStyle" HeaderStyle-HorizontalAlign="Center"/>
                            <asp:BoundField HeaderText="样品编号" DataField="SampleID" HeaderStyle-Width="31" ItemStyle-Width="31" FooterStyle-Width="31" HeaderStyle-Wrap="false" ItemStyle-Wrap="false" ItemStyle-CssClass="GridLineStyle" HeaderStyle-HorizontalAlign="Center"/>
                            <asp:BoundField HeaderText="取样深度或标高(m)" DataField="SampleDepth" HeaderStyle-Width="31" ItemStyle-Width="31" FooterStyle-Width="31" HeaderStyle-Wrap="false" ItemStyle-Wrap="false"  ItemStyle-CssClass="GridLineStyle" HeaderStyle-HorizontalAlign="Center"/>
                            <asp:BoundField HeaderText="岩性" DataField="Type" HeaderStyle-Width="31" ItemStyle-Width="31" FooterStyle-Width="31" HeaderStyle-Wrap="false" ItemStyle-Wrap="false" ItemStyle-CssClass="GridLineStyle" HeaderStyle-HorizontalAlign="Center"/>
    ...........
                        </Columns>
                    </asp:GridView>
    但是遇到那种相对较长的字段,比如说:hhasdsadfsadfasdfsad,这时候这个值对应的这一列就会被拉宽.向这种,如何控制呢?谢谢.
      

  6.   

            Me.GridView1.Attributes.Add("style", "word-break:keep-all;word-wrap:normal");
      

  7.   

    如果是中文可以加样式強制換行,hhasdsadfsadfasdfsad這種会被认为是一个词,如果要强制换行,可以在指定长度之后插入<br>来换。