动态调整基于项模板大小的gridview编辑模板

时间:2011-05-09 12:57:05

标签: templates gridview dynamic size width

我有一个GridView,可以显示最多30列的数据。有时这会产生这样的效果:gridview扩展到需要水平滚动条的宽度,但并非总是如此。列中数据的长度也各不相同,我不想设置特定的宽度,如果一半列为空,网格很小很好。

问题是,当我进入编辑模式时,标签被文本框取代,而那些占用更多宽度,整个表自行调整大小。

我有什么方法可以保留项目模板及其标签没有固定大小但同时始终确保编辑模板具有相同的大小。

我在考虑这样的事情:

开启“进入编辑模式事件”      EditTemplateTextBox.Width = CurrentItemTemplate.Width;

1 个答案:

答案 0 :(得分:0)

我可以在切换到编辑模式时保持GridView不会调整大小(除了添加的新“更新”和“取消”列),使用此CSS:

table input
{
    width: 95%;
}

如果需要,可以使用100%,但95%在单元格之间留出一点间距。

此外,如果页面上有其他表格,您不希望受此影响,请为您的GridView提供一个CssClass,并将'table'替换为您的css类的名称,如下所示:

<asp:GridView ... CssClass="myGridView">

.myGridView input
{
    width: 95%;
}