日期:2014-05-18  浏览次数:20374 次

如何取出gridview的宽度和高度?
ASP.NET(C#)
绑定数据后:
GridView1.DataSource = table;//table为数据表
GridView1.DataBind();

取出控件宽度:
TextBox1.Text = GridView1.Width.ToString();

得到的是空值,请问如何才能正确的取出绑定数据后的gridview控件宽度和高度?

------解决方案--------------------
你自己设置Grid的Width属性呗。

不过这跟你说的“正确取出”可能根本没有关系。这是服务器端初始设置值,也就是说发送到浏览器端的html中的table有这个width属性值。但是浏览器如何渲染出table,“正确的”table高度有多少像素,则是完全不确定的。比如就算是同一个桌面上的同一个浏览器进程,也会因为用户在浏览器上设置的默认字体大小等等参数,内容会把table撑开而变得更高。

这个值你得不到。只能在浏览器端avascript去获取,而且还要等浏览器已经完全处理完table内所有内容之后(例如下载完内部的图片之后)。而且这个值也是会随时改变了。
------解决方案--------------------
这不是winform,所以要非常注意根据web服务器端的处理流程和生命周期来编程。