0

我不能让这个 GridView 列改变它的宽度,我试过这个:

<asp:BoundField DataField="ABC" HeaderText="ABC" SortExpression="ABC"  ControlStyle-Width="200%">

或作为像素:

<asp:BoundField DataField="ABC" HeaderText="ABC" SortExpression="ABC"  ControlStyle-Width="500px">

或者在 Boundfield 标签内:

<ItemStyle HorizontalAlign="Center" Width="500px"/>

也在代码隐藏上试过这个:

Protected Sub GridView3_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView3.RowDataBound
    e.Row.Cells(7).Width = 500
End Sub

我怎样才能正确?

4

4 回答 4

4

这是如何做到的。我正在重新调整具有属性的列的大小:Visible = True

Private Sub GridViewColumnsrResize(ByVal aspectratio As Integer, ByVal gv As DataGridView)
    Try
        Dim col_count As Integer = gv.Columns.Count
        For j As Integer = 0 To col_count - 1
            If gv.Columns(j).Visible = True Then
                gv.Columns(j).Width = gv.Columns(j).Width * aspectratio
            End If
        Next
    Catch ex As Exception
        'output ex
    End Try
End Sub
于 2013-12-17T07:13:30.323 回答
0

建议如果您希望值出现在一行中,因为您正在增加宽度,那么您可以试试这个:
添加一个cssClass到您Gridview喜欢的cssClass=gridContainer
添加到.css文件中:

 .gridContainer
  {
     white-space:nowrap;
  }

如需更多选项,请查看空白属性

于 2013-01-30T06:27:42.947 回答
0

我通过为 GridView 本身设置固定宽度解决了这个问题,它可能不是针对特定列,但它在所有 GridView 列之间共享其宽度,从而扩展了我想要扩展的列。

<asp:GridView ID="GridView3" runat="server" DataSourceID="SqlDataSource4" AutoGenerateColumns="False" CssClass="Gridview" Width="800px">
于 2013-01-30T16:39:06.117 回答
0

我昨天刚刚发布了这个相关的帖子,有一个类似的问题。简短的回答是你不能。如该线程(底部)所述,有一种解决方法:

如何通过自定义打印窗口打印完整的 gridview 区域?

于 2013-01-29T21:15:05.363 回答