如何在一个页面上获得多个GridView以共享相同的列宽?
我有四个GridView,每个都有(基本上)相同的列。它们具有唯一标头并表示来自不同查询的数据。我想通过允许根据数据动态调整列来最大化可读性,但我不希望每个GridView独立完成。具有相同名称的列一个在另一个上面,具有不同的宽度看起来非常草率。而是希望所有四个GridViews为第1列选择相同的大小,为第2列选择相同的大小等等。
在Windows应用程序中,我相信这个名为SharedSizeGroup的属性允许您在决定最佳大小时设置来自不同控件的列以进行协作。
这可以在ASP.NET中实现吗?是否要求太多,因为动态列宽取决于浏览器?
由于
答案 0 :(得分:2)
我很确定你只能为自己设定宽度。我不认为他们是一个可以让你做你想要的事情的选择。
如果您使用 asp:TemplateFields , asp:BoundFields 等来形成您的字段,您可以使用 ItemStyle-Width =“ 100px“设置每列的宽度
答案 1 :(得分:0)
问题太多了,因为动态列宽取决于浏览器吗?
差不多。除非您明确设置列宽,否则浏览器将选择 - 因此ASP.NET不了解它。你可以使用一些jQuery来补偿:
$(function() {
var maxWidth = 0;
$('TBODY TR:first TD.col1').each(function() {
maxWidth = $(this).width > maxWidth ? $(this).width : maxWidth;
});
$('TBODY TR:first TD.col1').width(maxWidth);
});