我似乎无法阻止我的gridview行太高......从谷歌搜索,似乎这是一个非常常见的问题,但我似乎无法解决它。
<GridView ID="gridComputerApps" DataSourceID="llbComputerApplication" runat="server" AutoGenerateColumns="False"
CellPadding="0" CellSpacing="0" style="overflow:hidden"
GridLines="Horizontal"
EmptyDataText ="NO APPLICATIONS FOUND FOR THIS COMPUTER."
DataKeyNames="ComputerID, ApplicationID" RowStyle-Height="0px" RowStyle-BorderWidth="0" RowStyle-VerticalAlign="Top"
EnableViewState="False">
<Columns>
我也尝试过:
Private Sub gridComputerApps_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles gridComputerApps.RowDataBound
e.Row.Height = New Unit(5, UnitType.Pixel)
End Sub
有解决这个问题的完全万无一失的方法吗?
答案 0 :(得分:2)
您是否尝试在css中设置行高?
在CssClass
的{{1}}和RowStyle
样式的AlternateRowStyle
属性中设置此样式:
GridView
答案 1 :(得分:0)
这似乎已经解决了这个问题....也许并非一切都是必要的,但我正在继续前进。
table, tr, th, td {height: 5px; line-height:1.0;
margin: 0px 0px 0px 0px;
border:0px 0px 0px 0px;
padding: 1px 1px 1px 1px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 0px;
vertical-align: middle;
overflow:hidden;
overflow-x:hidden}
需要注意的一个特别重要的事情是padding-top,padding-left等... Firefox和IE解释填充不同,所以它在FF中是正确的,只是: 填充:1px 1px 1px 1px;
但IE似乎忽略了这一点。
另一个值得注意的问题是CSS当然会覆盖在RowDataBound事件中设置行高,这是有道理的。
另一个更新: 由于一些未知原因,上面的原始CSS停止了为我工作。我碰巧使用的是Blueprint CSS,这会导致一些样式出现问题,这会影响我的自定义样式表。
所以无论如何,我想我终于拥有了...... 1.基本上,为了安全(也许只有当你像我一样混乱),你必须明确设置每个可能会影响高度的属性。这是我正在使用的CSS:
.xGridview tr, th, td, input {height: auto;
line-height:normal;
margin: 0px 0px 0px 0px;
border:0px 0px 0px 0px;
padding: 0px 0px 0px 2px;
padding-top: 0px;
padding-right: 0px;
padding-bottom: 0px;
padding-left: 2px;
margin: 0px 0px 0px 0px;
margin-bottom: 0px;
margin-left: 0px;
margin-right: 0px;
margin-top: 0px;
vertical-align: middle;
overflow:hidden;
background-color:White}
我的网格中碰巧有一个必需的字段验证器;它呈现为隐形,所以直到我使用Firebug才发现它。更糟糕的是,我认为它是在一个表格中呈现的,它在某种程度上忽略了外表的CSS。
我在网格中有一个RadioButtonList,它默认呈现为一个表格。这可以通过在RadioButtonList控件上设置RepeatLayout =“Flow”来改变,而不是使其呈现为跨度,更好。另请注意,我将元素INPUT添加到CSS中,这是在连接到单选按钮的标签上设置vertical-align所必需的。
所以这似乎终于舔了它。