【问题标题】:Set column width of Gridview manually手动设置Gridview的列宽
【发布时间】:2015-11-25 15:20:54
【问题描述】:

在我的 ASP.NET Gridview 中,列的宽度由 headertext(或单元格中的内容)确定。在我的情况下,我有一个带有复选框的列,我将列标题垂直放置,但列宽根据标题文本而变化。 所以我想做的就是手动做一个小专栏。我尝试了下面代码中显示的标准。

     <asp:TemplateField AccessibleHeaderText="Geen" HeaderText="Geen trans" HeaderStyle-CssClass="VerticalHeader" ItemStyle-Width="10" ItemStyle-Wrap="false" HeaderStyle-Width="10" HeaderStyle-Wrap="false" HeaderStyle-HorizontalAlign="Left" >
        <ItemTemplate>
            <asp:CheckBox ID="cbNoTransport" runat="server" AutoPostBack="true" OnCheckedChanged="cbNoTransport_OnCheckedChanged"/>
        </ItemTemplate>
    </asp:TemplateField>

     <div id="grid" style="overflow:scroll; overflow-Y:hidden;" >
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false" 
    DataKeyNames="Barcode" DataSourceID="SqlDataSource1" 
    EmptyDataText="There are no data records to display." AllowPaging="True" 
    AllowSorting="True" onrowcancelingedit="GridView1_RowCancelingEdit" 
    onrowdeleted="GridView1_RowDeleted" onrowediting="GridView1_RowEditing" 
    onrowupdated="GridView1_RowUpdated" onsorted="GridView1_Sorted" 
    onpageindexchanged="GridView1_PageIndexChanged" PageSize="30"
    CssClass="Grid" onrowcommand="GridView1_RowCommand" 
    onrowdatabound="GridView1_RowDataBound" >
<Columns>
    <asp:BoundField DataField="Barcode" HeaderText="Barcode" 
        SortExpression="Barcode">
    </asp:BoundField>
    <asp:BoundField DataField="Werkpakket" HeaderText="Werkpakket" 
        SortExpression="Werkpakket">
    </asp:BoundField>
    <asp:BoundField DataField="HA" HeaderText="HA" SortExpression="HA" />
    <asp:BoundField DataField="Discipline" HeaderText="Discipline" 
        SortExpression="Discipline" >
    </asp:BoundField>
    <asp:BoundField DataField="Type" HeaderText="Type" 
        SortExpression="Type" >
    </asp:BoundField>
    <asp:BoundField DataField="Apparaat" HeaderText="Apparaat" 
        SortExpression="Apparaat" />
    <asp:TemplateField AccessibleHeaderText="Geen" HeaderText="Geen trans" HeaderStyle-CssClass="VerticalHeader" ItemStyle-Width="1%" ItemStyle-Wrap="false" HeaderStyle-Width="1%" HeaderStyle-Wrap="false" HeaderStyle-HorizontalAlign="Left" >
        <ItemTemplate>
            <asp:CheckBox ID="cbNoTransport" runat="server" AutoPostBack="true" OnCheckedChanged="cbNoTransport_OnCheckedChanged"/>
        </ItemTemplate>
        <ItemStyle Width="5%" />
    </asp:TemplateField>
    <asp:TemplateField HeaderText="Lijn dienst" HeaderStyle-CssClass="VerticalHeader">
        <ItemTemplate>
            <asp:CheckBox ID="cbNoTransport" runat="server" AutoPostBack="true" OnCheckedChanged="cbNoTransport_OnCheckedChanged" />
        </ItemTemplate>
    </asp:TemplateField>
    <asp:TemplateField HeaderText="Intercity" HeaderStyle-CssClass="VerticalHeader">
        <ItemTemplate>
            <asp:CheckBox ID="cbNoTransport" runat="server" AutoPostBack="true" OnCheckedChanged="cbNoTransport_OnCheckedChanged"/>
        </ItemTemplate>
    </asp:TemplateField>
    <asp:BoundField DataField="Appendage" HeaderText="Appendage" 
        SortExpression="Appendage" />
    <asp:BoundField DataField="Leiding" HeaderText="Leiding" 
        SortExpression="Leiding" />
    <asp:BoundField DataField="user_added" HeaderText="user_added" 
        SortExpression="user_added" />
    <asp:BoundField DataField="DTPrinted" HeaderText="DTPrinted" 
        SortExpression="DTPrinted" >
    </asp:BoundField>
    <asp:BoundField DataField="DTUpdated" HeaderText="DTUpdated" 
        SortExpression="DTUpdated" />
</Columns>
    <HeaderStyle HorizontalAlign="Left" Wrap="False" />
    <RowStyle HorizontalAlign="Left" Wrap="False" />

用 gridview 的代码编辑。

谁能帮我解决这个问题?

【问题讨论】:

  • &lt;/ItemTemplate&gt; 下,放入&lt;ItemStyle Width="20px" /&gt;
  • @TestWell 它没有任何区别。
  • 你是不是要实现竖排文字?
  • @TestWell no for Firefox 我明白了。我只需要更改列宽。

标签: c# asp.net gridview column-width


【解决方案1】:

如何将“px”作为像素或“%”添加到宽度量? 喜欢:

ItemStyle-Width="10px" HeaderStyle-Width="10px"

我想需要那个度量单位。

【讨论】:

  • 都试过了,都没有成功。宽度会发生变化,但始终保持最小宽度以水平显示标题。
猜你喜欢
  • 2020-11-28
  • 2017-09-13
  • 2015-06-27
  • 2013-07-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-19
  • 2012-01-21
相关资源
最近更新 更多