Repeater/DataList的HeaderTemplate何时显示?
Repeater和DataList组件皆有HeaderTemplate模板。这个模板什么时候会显示呢?
以前碰到过一种情况,比如说做新闻系统的时候,即使没有新闻,还是想把现实的结构显示出来,好让用户知道程序运行时正常的,只是没有记录而已。
今天碰到另外一种情况。想在没有数据记录的时候,不显示HeaderTemplate,用户看到的效果是要么有整个列表的框架,要么是没有列表。这种情形是出现在一个页面中有重复多个repeater的情形。
那么,HeaderTemplate何时会显示?何时不会显示呢?
答案:当绑定非null数据集时会显示。也就是说,即使你绑定一个空的DataTable给它,它也会把HeaderTemplate显示出来。相反,没有绑定,就不会显示出来。那么这样就好办了。当你想无论如何要让它显示HeaderTemplate的时候,就给它绑定数据源,无论数据源是否为空;如果你不想它显示时,进行判断,如果数据源的数据集为空,则不进行绑定。