ASP.NET设置GridView列的最大宽度大小

gym*_*ode 4 c# asp.net gridview

我在VS2005上使用ASP.NET C#。

我有一个GridView表,其中的列名为Description,并且由于输入始终很长,因此描述在水平方向上很长。

我希望GridView的所有列都具有最大宽度。

我尝试了很多方法,但没有一个起作用。

ItemStyle-Width="50px"

HeaderStyle-BorderWidth="50px"

HeaderStyle-Width="50px"

RowStyle-Width="50px"

Width="50px"

下面是我的GridView的代码片段:

<asp:GridView ID="GridView1" AutoGenerateEditButton="True" ondatabound="gv_DataBound" runat="server" DataSourceID="SqlDataSource1">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <asp:CheckBox ID="UserSelector" OnCheckedChanged="UserSelector_CheckedChanged" ondatabound="gv_DataBound" runat="server" />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>
Run Code Online (Sandbox Code Playgroud)

有人知道如何根据我的情况调整GridView列的大小吗?

Ans*_*_42 5

这就是我控制列宽的方法。

1.在标题中添加CSS。

<style type="text/css">
    .maxWidthGrid
    {
        max-width: 300px;
        overflow: hidden;
    }
</style>
Run Code Online (Sandbox Code Playgroud)

2.然后在这样的必要列中使用CSS ItemStyle-CssClass="maxWidthGrid"

<asp:BoundField ItemStyle-CssClass="maxWidthGrid" DataField="ClientName" HeaderText="Client Name"
                    ReadOnly="True" SortExpression="ClientName" />
Run Code Online (Sandbox Code Playgroud)


Tho*_*ian 4

我改变了我的代码,你在想什么?

        <RowStyle Width="150px"/>
Run Code Online (Sandbox Code Playgroud)

删除所有隐藏的东西

<asp:TemplateField><ItemTemplate> </ItemTemplate></asp:TemplateField>
Run Code Online (Sandbox Code Playgroud)

只需使用简单的

<columns> </columns>
Run Code Online (Sandbox Code Playgroud)

在这里,我认为您的代码看起来像 AutoGenerateColumns="True" 或 false 似乎并不重要

    <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="true" DataSourceID="SqlDataSource1">
         <Columns>
            <asp:CheckBox ID="UserSelector" OnCheckedChanged="UserSelector_CheckedChanged" ondatabound="gv_DataBound" runat="server" />
        </Columns>
        <RowStyle Width="150px"/>
    </asp:GridView>
Run Code Online (Sandbox Code Playgroud)