在Repeater中嵌套GridView
时间:2020-03-05 18:49:43 来源:igfitidea点击:
我有一种情况,例如,我需要重复一个美国州的列表,并在每个州的名称后显示一个城市和城市人口的表格。设计要求规定,每个外部重复都必须是一个州的名称,后跟一个城市表,并且此要求此时不能更改。将一个GridView嵌套在一个Repeater中,然后在Repeater的ItemDataBound
事件期间绑定每个重复的GridView是否有缺点?有哪些替代解决方案?
解决方案
回答
如果是我,我会反问,问我为什么要使用GridView。如果我们需要一堆诸如分页和排序之类的内置功能,那么GridView可能是一个不错的选择。如果我们只需要表格数据,我会重新考虑。为什么?因为有了GridView,我们可以获得一堆我们不会使用的东西,所以ViewState可能很大,并且页面性能会变慢。
在GridView方面,我并不是一个顽固的人,但是我只在有该死的充分理由时才使用它们。
回答
在上述情况下,最好使用主从样式GridView,这将为我们节省所有创建的GridView对象的开销。
它有多种实现方式(使用主菜单的下拉菜单,使用细节的模式弹出窗口等),但是要点是有可用的实现。
回答
至少,希望我们可以关闭GridViews上的ViewState。
回答
我能想到的最好的解决方案是将GridView嵌套在Repeater中。然后,我在Repeater的ItemDataBound事件期间绑定了每个重复的GridView。我当然关闭了它们的ViewState,因为它们不是必需的。